Bitcoin Forum
May 08, 2024, 01:35:11 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 »  All
  Print  
Author Topic: [ANN] Raycoin (RAY) First Ray Tracing Proof-of-Work - Mine with RTX 2080/70 GPUs  (Read 1617 times)
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 02:05:22 AM
Last edit: April 14, 2019, 06:50:48 PM by Qarterd
Merited by notsofast (10)
 #1


Raycoin-1.0-setup.exe (dev key / sig / VirusTotal Clean) (source)

GUI Wallet: electrum-ray-3.2.3-setup.exe (sig / VirusTotal Clean) (source / server)

Raycoin is a vanilla Bitcoin derivative with PoRT (Proof of Ray Tracing) for ASIC resistance.

http://ray-coin.com

https://discord.gg/YtZzbzp

Requirements:

- Latest Windows 10 October update
- Nvidia RTX 2080/70/60 GPU (Turing)



Max Supply: 21,000,000 RAY
Block Time: 10 minutes
Block Reward: 50 RAY
Founder's Reward: 9.9% for the first 4 years (4.95% of the max supply)
(goes towards the further development of Raycoin)

Raycoin:
- to get started mining run the Raycoin - mine shortcut on your desktop / start menu
- mining doesn't quite run at full speed so that your desktop can be more usable, to run at full speed or run slower in the background use the other mining shortcuts in your start menu
- by default mining uses addresses generated from Raycoin's command-line wallet which is not easy to use, to mine to an address from your electrum wallet edit MINING_ADDRESS with the settings shortcut, also any existing rewards can be exported to your electrum wallet using the export shortcut
- to mine with multiple GPUs edit GPU_COUNT with the settings shortcut

Raycoin Viewer:
- Raycoin Viewer is a ray trace hash visualizer, mining sandbox, and mining log viewer for your successful hashes and daily best hashes
- to visualize the genesis hash, copy and rename genesis-raytraces.log to <user>/AppData/Roaming/Raycoin/raytraces.log and run Raycoin Viewer
- supports HDR when enabled in windows display settings
- supports game controllers ('A' button acts like the SHIFT key)
- on multi-GPU systems you can select which GPU to use with -gpu <number>, ex. -gpu 1, default is 0
- you can specify the data directory with -datadir <path>, ex. -datadir C:\\Temp\\Raycoin

Raycoin Command-Line:
- to mine manually open Raycoin Console or shift-right-click in the Raycoin folder and select open powershell window here and run the command: ./raycoin-cli generate
- to stop mining: ./raycoin-cli stopgenerate (first press CTRL+C to take back control of the shell window)
- to allow your desktop to be more usable while mining try sleeping momentarily: ./raycoin-cli generate 0 1000 (or mine slowly: ./raycoin-cli generate 0 100000)
- for more options see: ./raycoin-cli help generate
- on multi-GPU systems you can select which GPU to use with -gpu=<number>, ex. -gpu=1, default is 0

Motivation:
The original idea of Bitcoin is that it's decentralized because the hashing could be done at home on consumer-available hardware, then ASICs came along making the home computer useless and threatening to centralize hashing power with privately held chip designs. Ray tracing is a rendering method that is going to become more dominant as the game industry shifts over to it from "rasterization", the current method. If the hash for your cryptocurrency is based off ray tracing hardware (RTX) then that goes a way towards ensuring the best hashing chips will always be in the hands of gamers / consumers, instead of companies like Bitmain who just accumulate wealth and have direct and private access to the top silicon foundries like TSMC.

There have been attempts to circumvent this issue like the "Dagger" proof-of-work used in Ethereum, but now even for Ethereum there are ASICs on the market and future designs that are claimed to be nearly 10x faster/cheaper than consumer available GPUs. This is because Dagger, a simplistic hash focused on memory usage, does not properly stress the GPU's logic/cache/memory layout and capabilities.

Description of the Ray Tracing Proof-of-Work:

- rays are cast out into a randomized field (seeded from the block) of faceted spheres which reflect the rays chaotically (like a disco ball)
- each sphere has a random label (4 bytes), when a ray hits a sphere its label is concatenated to the ray's string
- 32 such labels in each ray's string are hashed together using blake2s on the GPU
- if the hash is less than the target then a block is found, and the XY screen coordinate of the successful ray is stored in the high 20 bits of the nonce for verification
- there is one additional constraint: the ray must travel a certain depth into the field, after which the motion is deemed chaotic enough (over 99% of rays pass this test)
- rays that exit the field wrap around to the origin with a small perturbation to their orientation

In a full mining frame (1024x1024 RTs) Ray Tracing consumes 94% of the frame time (~40ms) with hashing just 4%, so this Proof-of-Work is dominated by Ray Tracing and thus ASIC-resistant. You can verify this yourself in the viewer by disabling hashing and enabling the profiler in the Engine Tuning menu.

Verification of a block hash requires only a single Ray Trace (1 RT) and takes about 1ms on my 2080 Ti, with the vast majority of that time spent in the GPU randomizing the field of spheres (not ray tracing). So verifying a blockchain as large as Bitcoin's would take only ~10 minutes.

ASIC Resistance:
One question that remains then is how difficult would it be to create a Ray Tracing ASIC?

1. For 100% accuracy, the biggest hurdle that the ASIC designers face is that they must reverse engineer RTX and use the exact same hierarchical building / traversal and ray-triangle intersection algorithm, capturing the ordering and the myriad of edge cases. If the ASIC design differs by even a single logic gate then some hashes will not be reproducible. As an example of the complexity of this, Microsoft's Fallback Layer for non-RT GPUs is about 10000 lines of code vs. a hash which is typically only 100 lines -- a ray tracer is significantly more complex than a hasher.

2. A likely strategy however would be to design a 99% accurate ray tracer that does not capture the ordering and edge cases and then rely on a low-end RTX chip for hash verification – after 32 hits, such a tracer would still be correct 70% of the time. To combat this, Raycoin will be "memory hardened" by using a random generator to perturb the millions of vertices so that the optimal ray tracing strategy is to store them as the ray can strike anywhere, consuming multiple GB of expensive memory and ensuring a 10x upper limit on cost/performance efficiency (this will be finalized once the low-end RTX chips memory limits are known). Furthermore, it may prove difficult to achieve that 10x efficiency over consumer RTX which is purpose-built for ray tracing, especially going forward as it becomes the dominant rendering method and we get more than 1 RT core per SM (streaming multiprocessor).

3. Which of the few high-end foundries would agree to manufacture such a chip that steps all over Nvidia's Ray Tracing IP and patents?

PoRT Visualizer:
Here you can see the labels and the hit count, the ray stops at hit #32:




The Engine Tuning menu can be used to customize the viewer appearance, here the specular and ray intensities have been cranked up so that the scene sparkles:




The visuals can be confusing so here's some pointers:
- the large arrow (yellow or red) is the ray starting point and direction
- the smaller arrows show the ray after it has exited the field and wrapped back around to the starting point to continue tracing
- if you fly outside of the field, you can see what the ray sees when it wraps around, turn off Shade Last Miss Only in the Engine Tuning menu to make this background more apparent

Future Work:
Raycoin utilizes only the RT cores to ward off ASICs, but assuming a ray tracing ASIC could eventually be designed (and patent infringements avoided) the next step would be to extend PoRT to utilize the whole SM (streaming multiprocessor) via a randomly generated shader that operates on each ray's unique string of labels. This can be done by including the shader compiler with Raycoin and using the hash of each block as a seed to generate HLSL code. The code could not be completely random as it must adhere to SM strengths, executing coherently among groups of rays in a fixed time while preserving the randomness of the string, but having semi-arbitrary shaders compiled as a proof of work step would be fundamental towards mitigating significant (4x or more) ASIC efficiencies, forcing them to look more like the general purpose SM. This changing code would be entering territory dominated by FPGAs, but they are complex to design, expensive commercially, and would be slower to synthesize their logic gates compared to the compiler. These shaders would perform random floating point / integer math with reads/writes across the register file and deep data dependencies, cache and texture reads, warp-level (inter-thread) operations, coherent and well-predicted flow control, all tuned to typical GPU pipelines and parameters. The amount of work done by this shader on each ray would be determined by the size of the whole SM relative to the RT core, ensuring that an ASIC could not have a more optimal density of components.
1715175311
Hero Member
*
Offline Offline

Posts: 1715175311

View Profile Personal Message (Offline)

Ignore
1715175311
Reply with quote  #2

1715175311
Report to moderator
1715175311
Hero Member
*
Offline Offline

Posts: 1715175311

View Profile Personal Message (Offline)

Ignore
1715175311
Reply with quote  #2

1715175311
Report to moderator
There are several different types of Bitcoin clients. The most secure are full nodes like Bitcoin Core, but full nodes are more resource-heavy, and they must do a lengthy initial syncing process. As a result, lightweight clients with somewhat less security are commonly used.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715175311
Hero Member
*
Offline Offline

Posts: 1715175311

View Profile Personal Message (Offline)

Ignore
1715175311
Reply with quote  #2

1715175311
Report to moderator
1715175311
Hero Member
*
Offline Offline

Posts: 1715175311

View Profile Personal Message (Offline)

Ignore
1715175311
Reply with quote  #2

1715175311
Report to moderator
notsofast
Legendary
*
Offline Offline

Activity: 1517
Merit: 1042


@notsofast


View Profile WWW
November 09, 2018, 02:11:24 AM
 #2

Ummm, this is neat-o. How long have you been developing this?

twitter.com/notsofast
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 02:14:50 AM
Last edit: November 09, 2018, 02:58:34 AM by Qarterd
 #3

Ummm, this is neat-o. How long have you been developing this?

Thanks, about a month, ever since I got my 2080 Ti, I forked over a pretty penny to be able to work on this.  Undecided
HotSwapp
Newbie
*
Offline Offline

Activity: 214
Merit: 0


View Profile WWW
November 09, 2018, 02:30:01 AM
 #4

interesting!

VIRUSTOTAL CLEAN
https://www.virustotal.com/#/url/157d8dfc181790440731a17da2180a9663bfce788607adfcda1bc62f7e7b74fa/detection
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 02:57:18 AM
Last edit: November 09, 2018, 03:15:15 AM by Qarterd
 #5


Good idea, thanks for this! Included this link in the post.
BreakTheChains
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
November 09, 2018, 04:47:43 AM
 #6

Any plans to support 1070s?
Will test when/if its released
Xenon05
Jr. Member
*
Offline Offline

Activity: 228
Merit: 1

GPTCash Weekly Airdrop: https://discord.gg/RWPEsRa


View Profile
November 09, 2018, 04:51:40 AM
 #7

Today I'm releasing a preview of Raycoin, this release is a mining sandbox and visualization of the Ray Tracing Proof-of-Work algorithm. The viewer will be used to browse successful hashes in your mining log and on the blockchain.

Raycoin will be a vanilla Bitcoin derivative with PoRT (Proof of Ray Tracing) for ASIC resistance. Integration into Bitcoin (bitcoind) is underway as of today, I'll provide more details of the Raycoin cryptocurrency later on release day. For now I'd appreciate if prospective miners download the viewer and report any bugs:

Raycoin-v0.5.zip (VirusTotal Clean)

Official Website (just a forum for now): http://ray-coin.com

Requirements:

- Latest Windows 10 October update
- Nvidia RTX 2080/70 GPU (Turing)


Screenshot of the viewer:



Description of the Ray Tracing Proof-of-Work:

- rays are cast out into a randomized field (seeded from the block) of faceted spheres which reflect the rays chaotically (like a disco ball)
- each sphere has a random label (4 bytes), when a ray hits a sphere its label is concatenated to the ray's string
- 32 such labels in each ray's string are hashed together using blake2s on the GPU
- if the hash is less than the target then a block is found, and the XY screen coordinate of the successful ray is stored in the high 20 bits of the nonce for verification
- there is one additional constraint: the ray must travel a certain depth into the field, after which the motion is deemed chaotic enough (over 99% of rays pass this test)
- rays that exit the field wrap around to the origin with a small perturbation to their orientation


Ray Tracing consumes 96% of the frame time with hashing just 2%, so this Proof-of-Work is dominated by Ray Tracing and thus ASIC-resistant. You can verify this yourself in the viewer by disabling hashing and enabling the profiler in the Engine Tuning menu.

Here you can see the labels and the hit count, the ray stops at hit #32:



The Engine Tuning menu can be used to customize the viewer appearance, here the specular and ray intensities have been cranked up so that the scene sparkles:





this very interesting project, its really sounds new with a different kind of POW. good luck to this project.
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 04:53:40 AM
 #8

this very interesting project, its really sounds new with a different kind of POW. good luck to this project.

Thanks for displaying my images, they are enormous though.
pinball_wizard
Full Member
***
Offline Offline

Activity: 702
Merit: 102

I am the Kung Fury...


View Profile
November 09, 2018, 06:13:28 AM
 #9

I've seen that's not mineable atm but, can i mine with 1070 too?

   SEMUX   -   An innovative high-performance blockchain platform   
▬▬▬▬▬      Powered by Semux BFT consensus algorithm      ▬▬▬▬▬
Github    -    Discord    -    Twitter    -    Telegram    -    Get Free Airdrop Now!
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 06:53:30 AM
Last edit: November 09, 2018, 07:23:26 AM by Qarterd
 #10

I've seen that's not mineable atm but, can i mine with 1070 too?

Unfortunately no. There is GPU emulation for DXR ray tracing called the "Fallback Layer" but it doesn't match Turing's RT cores exactly (there are a myriad of ways to construct a hierarchy and intersect rays/triangles and all sorts of edge cases), it's likely that the Fallback Layer can't reproduce some if not most hardware mining results so I didn't bother supporting it.

I'll consider supporting the emulator so that those with non-Turing GPUs can at least play with it, but it's kind of a low priority at the moment.
pinball_wizard
Full Member
***
Offline Offline

Activity: 702
Merit: 102

I am the Kung Fury...


View Profile
November 09, 2018, 08:35:48 AM
 #11

I've seen that's not mineable atm but, can i mine with 1070 too?

Unfortunately no. There is GPU emulation for DXR ray tracing called the "Fallback Layer" but it doesn't match Turing's RT cores exactly (there are a myriad of ways to construct a hierarchy and intersect rays/triangles and all sorts of edge cases), it's likely that the Fallback Layer can't reproduce some if not most hardware mining results so I didn't bother supporting it.

I'll consider supporting the emulator so that those with non-Turing GPUs can at least play with it, but it's kind of a low priority at the moment.

Really sad about this...Sad

   SEMUX   -   An innovative high-performance blockchain platform   
▬▬▬▬▬      Powered by Semux BFT consensus algorithm      ▬▬▬▬▬
Github    -    Discord    -    Twitter    -    Telegram    -    Get Free Airdrop Now!
dingming5555
Newbie
*
Offline Offline

Activity: 40
Merit: 0


View Profile
November 09, 2018, 09:56:35 AM
 #12

wow,maybe you are the nvidia sellers ::)what devition need? only rtx2080?
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 01:24:34 PM
 #13

wow,maybe you are the nvidia sellers ::)what devition need? only rtx2080?

Yes only RTX 2080 Ti / 2080 / 2070.
umine
Full Member
***
Offline Offline

Activity: 405
Merit: 136



View Profile
November 09, 2018, 02:36:50 PM
 #14

wow,maybe you are the nvidia sellers ::)what devition need? only rtx2080?

Yes only RTX 2080 Ti / 2080 / 2070.

Could you post help section with parameters of RaycoinViewer starting?
Can I start the viewer on the PC with different GPUs both supported Ray tracing and Not supporting ?

Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 02:46:38 PM
 #15

wow,maybe you are the nvidia sellers ::)what devition need? only rtx2080?

Yes only RTX 2080 Ti / 2080 / 2070.

Could you post help section with parameters of RaycoinViewer starting?
Can I start the viewer on the PC with different GPUs both supported Ray tracing and Not supporting ?

Okay, use -gpu <number>, ex. -gpu 1, default is 0.
umine
Full Member
***
Offline Offline

Activity: 405
Merit: 136



View Profile
November 09, 2018, 03:37:26 PM
 #16

wow,maybe you are the nvidia sellers ::)what devition need? only rtx2080?

Yes only RTX 2080 Ti / 2080 / 2070.

Could you post help section with parameters of RaycoinViewer starting?
Can I start the viewer on the PC with different GPUs both supported Ray tracing and Not supporting ?

Okay, use -gpu <number>, ex. -gpu 1, default is 0.

Parameter -gpu works. But GPU doesn't work (GPU support tensor cores and ray tracing, according to official description)
Hardware: TITAN V
Software: Win10 x64, Nvidia driver version 411.70
What the problem could be?

operabit
Legendary
*
Offline Offline

Activity: 1162
Merit: 1000


View Profile
November 09, 2018, 03:52:53 PM
 #17

wow,maybe you are the nvidia sellers ::)what devition need? only rtx2080?

Yes only RTX 2080 Ti / 2080 / 2070.

There is already a coin that can be mined with the Nvidia RTX series, maybe a year or two more years the series 10 will no longer be used to mine coins.
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 04:01:08 PM
 #18

Parameter -gpu works. But GPU doesn't work (GPU support tensor cores and ray tracing, according to official description)
Hardware: TITAN V
Software: Win10 x64, Nvidia driver version 411.70
What the problem could be?

You have the old version of windows, for DXR you need the latest Windows October Update and a driver later than 416.16. October Update was actually pulled due to bugs and will be back next week.

Also, TITAN V doesn't have RT cores anyway, it probably won't run on your system without emulation (which can't be used for mining). Sad
AltcoinWire
Newbie
*
Offline Offline

Activity: 182
Merit: 0


View Profile
November 09, 2018, 05:13:54 PM
 #19

We invite you to bring your project to our exchange, Altmarkets is a Cryptocurrency 6,000 members and over 100 coins listed. Focusing on lower-tier altcoins we push each coin listing with social media announcements as well as to our growing social channels.

Our BCT Announce: https://bitcointalk.org/index.php?topic=4687148.0
Discord Channel: https://discord.gg/p4NwBdE

Request a listing with us via the above thread / announce post or visit http://www.altmarkets.cc - We aim to reply within 24 - 48 hours.
Qarterd (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 10


View Profile WWW
November 09, 2018, 05:28:11 PM
Last edit: November 24, 2018, 06:28:53 AM by Qarterd
 #20

Great project, looking forward  a pleasant cooperation, we want to list you coin on our exchange. A great start, search MXshine! or  marketing email


We invite you to bring your project to our exchange, Altmarkets is a Cryptocurrency 6,000 members and over 100 coins listed. Focusing on lower-tier altcoins we push each coin listing with social media announcements as well as to our growing social channels.

Our BCT Announce: https://bitcointalk.org/index.php?topic=4687148.0
Discord Channel: https://discord.gg/p4NwBdE

Request a listing with us via the above thread / announce post or visit http://www.altmarkets.cc - We aim to reply within 24 - 48 hours.

Thanks I'll contact you in a few weeks when the cryptocurrency is released.
Pages: [1] 2 3 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!