This is continuation of my research started in this post, specifically the claim 3, “Hardware design shops are getting better at what they do”.
Yesterday evening, I read an article in ACM Communications magazine, called “A New Golden Age for Computer Architecture” by John L. Hennessy and David A. Patterson (yes, it is the same Patterson as in Fisher, Lynch, Patterson in FLP-impossibility that is often quoted by consensus algorithm researchers).
Here is the video of the talk (given by David Patterson on 13th of June 2018) that goes over the same points as the article, and more. I will go over the main points that I think are relevant in the context of cryptocurrency mining and other application of specialised hardware in blockchain/cryptocurrency industry (STARK prover hardware, elliptic curve units, finite field arithmetic units, etc.):
Around 36:05 in the video.
Google announced TPU (Tensor Processor Unit) in 2016, which is currently the most famous example of DSA (Domain Specific Architecture). For machine learning, TPUs were announced to be 10x faster than completion, and it is now used by billions of people. It also sparked a lot of interest in DSA and tons of activity like creations of startups and acquisitions. Clock speed is lower than CPUs or GPUs, matrix multiply units use systolic architecture, there are no hierarchical memory caches, it has more on-chip memory than GPUs. Performance per watt is 83x better than CPU, and 29x better than GPU.
New architects/designers are needed
Around 38:52 in the video.
Up to now it has been that the Instruction Set specs were binary compatible. Now we need new type of “vertical” designers who understand applications, DSLs (Domain Specific Languages), compilers, hardware architecture, and the implementations. Because hardware spec can be flexible too.
Around 39:28 in the video.
When they started with RISC-V at Berkley, they wanted to use x86 & ARM instruction set architectures, but they were both complicated and had IP issues. They instead decided to create a “clean-slate” architecture in 3 months, and released frozen spec in 4 years (yes, it took a bit longer than planned).
Now everyone can use RISC-V (and people already do) as an Open Architecture.
Now RISC-V Foundation counts more than 100 members (and growing), and companies like NVidia and Western Digital are switching their controller chips to RISC-V.
The goal of Open Architecture is “Create industry-standard open ISAs (Instruction Set Architectures) for all computing devices — Linux for processors”.
Agile Hardware Development
Around 47:12 in the video.
New CAD (Computer Aided Design) enables software development techniques to make small hardware development teams productive via abstraction & reuse.
Couple of things I did not appreciate until I read the article and listened to the video:
- There can be multiple stages of design (FPGA, ASIC flow, Tape-in), before “tape-out” (which is the stage where you supposedly fork out a few millions of dollars and wait for couple of months to get your masks back).
- The crucial thing about Tape-in is that you can get very accurate estimates about the performance of your chip and its power consumption, before you go ahead and spend millions on tape out.
- You can rent FPGAs on AWS to tests things out before moving the the ASIC flow.
All these things reduce the cost (and will continue to reduce it even further) for hardware design.
Golden Age of Hardware Architecture is upon us
Hardware architects will now need to optimise energy and performance without better transistors.
If J. Hennessy and D. Patterson are right, then we need to be much more used to the idea that hardware design will become more sophisticated, open, and competitive, and trying to fight this trend is conterproductive.
Interesting questions and answers
- Answering one of the questions, David says that for TSMC (one the foundries, companies that perform Tape-Out of chips), the cost of 7nm transistor is the same as the cost of 28nm transistor, meaning that the cost of transistor does not go down anymore when you make transistors smaller and smaller. So the benefits of making smaller and smaller transistors will stop very soon, and this is already happening. This would lead to a more competitive ecosystem of foundries (which is currently dominated by TSMC and Samsung).
- There was a question about IoT domain, where both energy and cost are very sensitive topics (as they are in the mining domain). The instruction set really matters in these domains. This is why open architecture (RISC-V), which is not locked up on x86 (for laptops) or ARM (for mobile phones), has a real opportunity.
- In another answer, David quotes New York Times that there were 35 hardware startups in that area (I am assuming area of Berkley-Stanford), and there are some who are saying there are actually 55 startups.
- RISC-V may become a commercial force to be reckoned with (so that you do not have to go to Intel/AMD/ARM/Nvidia if you have some design improvements). Something that Linux did for the operating systems, an Open Hardware Architecture can do to processors and computers.
- The Achilles heel in the “Golden Age” argument is that CAD software is extremely expensive at the moment. It is a practical obstacle for many hardware designers. Development of open-source CAD software would help a lot.
A lot of thinking, arguments and intuition about hardware that still prevail in the public domain are based on the last 50 years of history where the trends like Moore’s law, Dennard scaling, and microminiaturisation of transistors were on-going. As most of these effects cease to apply, we find ourselves in the new world, the “Golden Age of Hardware Architecture”, which requires new thinking, and understanding that the improved architecture will now become the most important tool for advancements in specialised hardware.
How does it relate to Ethereum and ProgPOW, for example? I think there is still a misplaced belief that it is very hard or impossible to beat GPUs on ProgPOW with a specialised hardware, based on a different architecture. Google TPU is an example where modifying architecture (without modifying parts like memory) gives 29x advantage over GPUs. GPUs as they currently stand, are still way too general-purpose.