NVIDIA's Latest Open-Source Project Is Their NVDLA Deep Learning Compiler

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • lucasbekker
    Phoronix Member
    • Dec 2016
    • 68

    #11
    Originally posted by ElectricPrism View Post
    "Deep Learning" (If, Then, Else + Scammery, Algorithms, and a Database)
    That is machine learning, not deep learning...

    Comment

    • cybertraveler
      Senior Member
      • Nov 2017
      • 1102

      #12
      Originally posted by ElectricPrism View Post
      Can someone explain why some fancy pants name "X Deep Learning Compiler" is any different than a fucking regular compiler.

      All these "trendy" words for dumb people are annoying me "The Cloud" (A fucking server computer) "Deep Learning" (If, Then, Else + Scammery, Algorithms, and a Database)

      I feel like I'm in some fancy store where they're trying to sell me fucking holy soap supposedly hand crafted by the 12 Apostles, or fucking "moon rocks" disguising something ordinary and extraordinary.

      99% Con, 1% Product
      I can relate to the sentiment of your post, but regarding the term "the cloud", I have managed to discern a concrete meaning behind the term which makes the term useful:

      A cloud is a server topology whereby there are many servers all providing a service. Users of that service are not concerned with which specific, addressable server instance (virtual or physical server) their data or application is hosted on. The user simply accesses "the cloud" and an appropriate server within the cloud is transparently selected to work for that user.

      So for example:
      • Instead of the user going to ftp://box44.example.com to store and access their data the user uses the Dropbox application and they do not know or care which specific server is hosting their data. Their data is "in the cloud", so to speak. Or;
      • Iinstead of paying for a physical server to host a game server on, you instead use a matchmaking service built into the game. The matchmaking service is a type of cloud computing because the user does not know or care which physical server will host their game. Their game is hosted "in the cloud".
      So "the cloud" can be thought of as ignorance of which specific server you are using. Some of the common benefits of cloud computing are:
      • sharing resources between many users for efficiency
      • redundancy
      • ease of use (from a user perspective)
      There's a lot of cloud computing/storage out there which isn't branded or termed as being "cloud based". There's also a lot of cloud computing/storage services out there which wear the "cloud" term like a badge of honour, when these days cloud based services are extremely common and novice computer users even [often unknowingly] expect their hosted services to be cloud based.

      Comment

      • coder
        Senior Member
        • Nov 2014
        • 8839

        #13
        Originally posted by ElectricPrism View Post
        Can someone explain why some fancy pants name "X Deep Learning Compiler" is any different than a fucking regular compiler.
        llukas already answered in a sentence, but perhaps more detail would be helpful.

        Quoting from https://devblogs.nvidia.com/nvdla/ :
        The compiler is a key component of the NVDLA software stack. It generates optimized execution graphs which map the tasks defined in the layers of pre-trained neural network models onto the various execution units in NVDLA. It reduces data movement as much as possible while maximizing utilization of the computational hardware.
        ...
        Compiler optimizations such as layer fusion and pipeline scheduling work well for larger NVDLA designs, providing up to a 3x performance benefit across a wide range of neural network architectures. This optimization flexibility is key to achieving power efficiency across both large network models like ResNet-50 and small network models like MobileNet.

        For smaller NVDLA designs, compiler optimizations such as memory tiling are critical for power efficiency. Memory tiling enables a design to balance on-chip buffer usage between weight and activation data, and so minimizes off-chip memory traffic and power consumption.
        This operates at a much higher level than a normal compiler, and maps it to a high-level description of the hardware accelerator, as well.

        It's similar to what Google is doing, with MLIR:

        https://medium.com/tensorflow/mlir-a...k-beba999ed18d

        Originally posted by ElectricPrism View Post
        All these "trendy" words for dumb people are annoying me "The Cloud" (A fucking server computer)
        It's not, though. Cloud adds useful abstractions that enable scalability, among other things. For a long time, the only way to scale was to either buy an incredibly expensive multi-processor mainframe, or you have to cobble together your own framework for scaling across multiple servers (which was still much more limited and fragile than modern cloud infrastructure).
        Last edited by coder; 14 September 2019, 10:36 PM.

        Comment

        • coder
          Senior Member
          • Nov 2014
          • 8839

          #14
          Originally posted by cybertraveler View Post
          So "the cloud" can be thought of as ignorance of which specific server you are using. Some of the common benefits of cloud computing are:
          • sharing resources between many users for efficiency
          • redundancy
          • ease of use (from a user perspective)
          Also, cloud enables one cloud service to harness others. So, with your example of a cloud-based matching service, you can have a 3rd party provider offer that to online games, and they can integrate that service without the end user knowing anything about it.

          There are probably better examples, but the point is that by having a scalable platform, you can more easily build scalable applications out of reusable, scalable building blocks. If each service had their own homegrown scale-out method, then it would be a mess, and far less practical, stable, and secure.

          Comment

          Working...
          X