3 ms·
Would anyone want to do an explain-like-I’m-in-high-school on this?
by mrfusion 6y ago
Would anyone want to do an explain-like-I’m-in-high-school on this?
- Wistar 6y agoMe, too. I'd like to know if these will have a practical impact on, say, media-storage for editing.
- mikewarot 6y agoThis is a new class of devices that couples fast SSD storage directly with an FPGA. The types of computing that can be done in an FPGA require a new style of programming, because in an FPGA, programs get mapped into hardware, such that data flows through the chip, with all of the code running at the same time, instead of in sequence. There are large differences in the style of programming required to get efficient use out of an FPGA... there are some ways of translating C that work, but they are crude crutches at best. This is like going back to the early days of computing, when the new machines were expensive, but very fast... and programmer time was relatively cheap. It's going to take a special new breed of programmer to make this really work well. We're at the beginning of a new era. I hope that makes sense.
- dumbfounder 6y agoIs this to be leveraged at the application level or the OS level? Since so much of the world is going to the cloud, the only applications I can think are for file systems or databases, what else is there? Is there a significant advantage for personal computers?
- mikewarot 6y agoI don't really know what this would be good for on a personal computing level. I'd do a lot of things with digital signal processing. If you had a large set of videos, and you wanted to stream a down-sampled version on the fly, the FPGA could do that type of thing, easy peasy. We're at the stage where there is maximum possibility, and minimal legacy to worry about... like the early days of the PC.
- rodgerd 6y agoThe FPGA is programmable silicon. It's not as fast as a regular CPU, but it can be re-programmed with whatever algorithms you want. Currently one big bottleneck for data processing is moving the data from the drive, over a storage link, into memory, and then back to the drive. By putting a programmable processor on the drive, you can eliminate that overhead by putting some of your processing algorithms on the storage. So, for example, if you were running a Hadoop cluster, you could have your common Hadoop algorithms baked into the processor of the drive. Every drive now becomes a Hadoop processing accelerator. Rather than pulling a full dataset into main memory over that very slow link, you run some of the job on each drive, and return only the data you need. Every drive has its own processing power, so the more data you have, the more grunt you have, and you're eliminating the slowest steps. Because the FPGA is reprogrammable, you can change which algorithms you push down to the drive as you change your workloads over time. Every disk you add becomes a specialized big data, ML, whatever, processing unit.