mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > Hardware > GPU Computing > GpuOwl

Reply
 
Thread Tools
Old 2020-11-07, 06:39   #1
paulunderwood
 
paulunderwood's Avatar
 
Sep 2002
Database er0rr

76158 Posts
Default 2^n-3

How easy would it be to alter gpuOwl to crunch 2^n-3?

Is the current gpuowl.cl hackable to do this? If so what needs to be changed? Is it just a matter of hacking the carry code?
paulunderwood is offline   Reply With Quote
Old 2020-11-07, 06:47   #2
axn
 
axn's Avatar
 
Jun 2003

2·32·293 Posts
Default

Quote:
Originally Posted by paulunderwood View Post
Is it just a matter of hacking the carry code?
Doubtful. With +/-1 you get the mod for free as a result of the IBDWT itself. Not sure what additional thing needs to be done to do the same for -3.
axn is offline   Reply With Quote
Old 2020-11-07, 07:04   #3
preda
 
preda's Avatar
 
"Mihai Preda"
Apr 2015

55F16 Posts
Default

Quote:
Originally Posted by paulunderwood View Post
How easy would it be to alter gpuOwl to crunch 2^n-3?

Is the current gpuowl.cl hackable to do this? If so what needs to be changed? Is it just a matter of hacking the carry code?
One problem is that gpuowl.cl is very heavily optimized for the "-1" case -- the weighting/unweighting. A lot of tricks have been applied in that area. To change, a logical approach would be to unoptimize (i.e. produce clean & slow code, that can be checked to be correct), then implement the new functionality, then optionally reoptimize the new code.

Another approach is to start from a clean-slate, and import blocks from gpuowl.cl if/when they prove useful.

Last fiddled with by preda on 2020-11-07 at 07:06
preda is offline   Reply With Quote
Reply

Thread Tools


All times are UTC. The time now is 14:55.


Sun Jan 23 14:55:22 UTC 2022 up 184 days, 9:24, 1 user, load averages: 2.70, 1.87, 1.59

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.

≠ ± ∓ ÷ × · − √ ‰ ⊗ ⊕ ⊖ ⊘ ⊙ ≤ ≥ ≦ ≧ ≨ ≩ ≺ ≻ ≼ ≽ ⊏ ⊐ ⊑ ⊒ ² ³ °
∠ ∟ ° ≅ ~ ‖ ⟂ ⫛
≡ ≜ ≈ ∝ ∞ ≪ ≫ ⌊⌋ ⌈⌉ ∘ ∏ ∐ ∑ ∧ ∨ ∩ ∪ ⨀ ⊕ ⊗ 𝖕 𝖖 𝖗 ⊲ ⊳
∅ ∖ ∁ ↦ ↣ ∩ ∪ ⊆ ⊂ ⊄ ⊊ ⊇ ⊃ ⊅ ⊋ ⊖ ∈ ∉ ∋ ∌ ℕ ℤ ℚ ℝ ℂ ℵ ℶ ℷ ℸ 𝓟
¬ ∨ ∧ ⊕ → ← ⇒ ⇐ ⇔ ∀ ∃ ∄ ∴ ∵ ⊤ ⊥ ⊢ ⊨ ⫤ ⊣ … ⋯ ⋮ ⋰ ⋱
∫ ∬ ∭ ∮ ∯ ∰ ∇ ∆ δ ∂ ℱ ℒ ℓ
𝛢𝛼 𝛣𝛽 𝛤𝛾 𝛥𝛿 𝛦𝜀𝜖 𝛧𝜁 𝛨𝜂 𝛩𝜃𝜗 𝛪𝜄 𝛫𝜅 𝛬𝜆 𝛭𝜇 𝛮𝜈 𝛯𝜉 𝛰𝜊 𝛱𝜋 𝛲𝜌 𝛴𝜎 𝛵𝜏 𝛶𝜐 𝛷𝜙𝜑 𝛸𝜒 𝛹𝜓 𝛺𝜔