5 ms·
Inside the Microsoft FPGA-based configurable cloud [video]
- samuell 9y agoTried to scan the video to see if they have any support for reconfigure.io [1] (Code FPGAs with Go concurrency primitives). Didn't see any mention. Anybody knows more? Or I'll have to watch the vid in detail ... looks pretty pedagogic anyways :) ... [1] https://reconfigure.io/ https://reconfigure.io/
- monocasa 9y agoIn general, code meant for sequential processors (even massively parallel sequential processors) doesn't really translate into the potential gains you see from FPGAs. I'm pretty skeptical that this gives you any gains. Even OpenCL->HDL wasn't the huge boon it was supposed to be.
- thesz 9y ago1) You're right. The problem here is the unpredictability of the buffer's size - it's equivalent to halting problem in general. You miss just one item in the buffer and you risk circuit not working at random times. 2) OpenCL->HDL takes hours to complete due to need to synthesize, whereas OpenCL->CPU code takes seconds at worst. The time to get working (synthesized) code is major blocking factor in utilizing FPGAs anywhere.
- mmalone 9y agoDo you think pure paradigms could be mapped, or are you skeptical of any general purpose language being able to efficiently compile to FPGAs _and_ CPUs (and GPUs)?
- willyyr 9y agoI've watched the whole video, no mention about this.
- deleted 9y ago[deleted]
- mmalone 9y agoWhy aren't more people deploying FPGAs like this? I started looking into using FPGAs for distributed systems work about six years ago when I was building a distributed database. Since then, about once a month I come across some problem that an FPGA could be useful for (i.e., enhance the performance enough that something otherwise infeasible becomes feasible). The devices themselves aren't that expensive (<$100) so why doesn't every server have one? Is there some hidden cost I'm not aware of (socket real estate, power consumption)? Or is it just a chicken-and-egg problem with not enough engineers asking for them because they don't know how they work because they're not more widely deployed?
- rjsw 9y agoThere are plenty of PCI and PCIe cards available with an FPGA.
- WorldMaker 9y agoI would assume it's the chicken-and-egg problem. Why add a ~$100 component to a machine that might never be used? It's similar to how servers never had GPUs because that was a thing only consumers that play videogames need, right up until the point that a mixed combo of A) system on a chip manufacturers needed to always include a GPU for design simplicity, and B) GPUs were realized to be rather efficient generic math co-processors for a wider variety of problem domains than just "graphics" (because who needs graphics on a headless server?).
- SomeStupidPoint 9y agoHonestly? It's that I have no idea where to even buy a reasonable FPGA card with a high-speed interconnect so I could build my own Catapult-esque system. Something where I could buy a fully working card with standard networking FPGA blocks to build against, and have the FPGA mesh and PCI(e) connectors "just work" with minimal config. I've never moved off "well, that's cute" on demo boards because the market requires a lot of hardware customization to do anything neat (eg, MS designing their own for this). And, well, not to harp too much on the tooling... But the tooling is annoying. Workable, but annoying.
- JoachimSchipper 9y ago
- samuell 9y agoThe explanation of FPGAs between 5:00 and ~12:00 was very very good. TL;DW: - FPGAs are more power-efficient than CPUs and GPUs - FPGAs are more flexible than ASICs FPGAs vs CPUs: - CPU: Sequentially apply instructions on data in place - FPGA: In parallel, flow data through instructions in place
- nintendo1889 9y agoGoogle's TPU uses 28-40 W, Microsoft's uses 25 watts. Relevant but not deep: https://redmondmag.com/blogs/the-schwartz-report/2016/10/different-cloud-based-ai-paths.aspx https://redmondmag.com/blogs/the-schwartz-report/2016/10/dif...
- drewg123 9y agoDoes anybody know if the FPGA accelerated NIC uses a different driver on the guest VM, or just the standard hyperv net driver? If it uses the standard hyperv driver, can a guest be migrated live between accelerated and unaccelerated hosts?
- kaidchen 9y agoYeah, there's a different driver in the VM needed