Inside the Microsoft FPGA-based configurable cloud [video]

  • The 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

  • Tried 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/

  • Google's TPU uses 28-40 W, Microsoft's uses 25 watts.

    Relevant but not deep: https://redmondmag.com/blogs/the-schwartz-report/2016/10/dif...

  • Why 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?

  • Does 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?