Finite Field Assembly: A Language for Emulating GPUs on CPU
https://leetarxiv.substack.com/p/emulating-a-gpu-on-a-cpu-using-finiteBy muragekibicho at
muragekibicho | 2 comments | 4 days ago
It's a CUDA alternative that uses finite field theory to convert GPU kernels to prime number fields.
Finite Field is the primary data structure : FF-asm is a CUDA alternative designed for computations over finite fields.
Recursive computing support : not cache-aware vectorization, not parallelization, but performing a calculation inside a calculation inside another calculation.
Extension of C89 - runs everywhere gcc is available. Context : I'm getting my math PhD and I built this language around my area of expertise, Number Theory and Finite Fields.
zeroq | 2 comments | 2 hours ago
Additionally I've tried earlier chapters and they are behind a paywall.
You need a better introduction.
pizza | 1 comment | 2 hours ago
Conscat | 1 comment | 45 minutes ago
I for one have no clue what anything I read in there is supposed to mean. Emulating a GPU's semantics on a CPU is a topic which I thought I had a decent grasp on, but everything from the stated goals at the top of this article to the example code makes no sense to me.
pizza | 0 comments | 24 minutes ago
almostgotcaught | 3 comments | 45 minutes ago
Your LinkedIn says you're an undergrad that took a gap year 10 months ago (before completing your senior year) to do sales for a real estate company.
pizza | 1 comment | 18 minutes ago
almostgotcaught | 0 comments | 12 minutes ago
saghm | 0 comments | 24 minutes ago
saagarjha | 1 comment | 42 minutes ago
almostgotcaught | 0 comments | 37 minutes ago
pwdisswordfishz | 0 comments | 11 minutes ago
I thought a finite field's order has to be a prime power.
adamvenis | 1 comment | 55 minutes ago
almostgotcaught | 0 comments | 51 minutes ago
vimarsh6739 | 0 comments | 42 minutes ago
Interestingly, in the same work, contrary to what you’d expect, transpiling GPU code to run on CPU gives ~76% speedups in HPC workloads compared to a hand optimized multi-core CPU implementation on Fugaku(a CPU only supercomputer), after accounting for these differences in synchronization.
foota | 0 comments | 60 minutes ago
Edit: this tickles my brain about some similar seeming sort of programming language experiment, where they were also trying to express concurrency (not inherently the same as parallelism) using some fancy math. I can't remember what it was though?
hashxyz | 1 comment | 2 hours ago
Conscat | 0 comments | 51 minutes ago
catapart | 0 comments | 2 hours ago
I know that's pretty abstract, but without that kind of "apples to apples" comparison, I have trouble contextualizing what kind of output is bring targeted with this kind of work.
tooltechgeek | 0 comments | 2 hours ago
imbusy111 | 0 comments | 58 minutes ago
almostgotcaught | 0 comments | 52 minutes ago
This was discussed on Reddit - this is not actually finite field arithmetic.
Also you can go to this dudes GitHub and see exactly how serious this project is.
https://github.com/LeetArxiv/Finite-Field-Assembly
Lol