High Performance Managed Languages • Martin Thompson • YOW! 2017

Поділитися
Вставка
  • Опубліковано 11 вер 2024
  • This presentation was recorded at YOW! 2017. #GOTOcon #YOW
    yowcon.com
    Martin Thompson - High-Performance Computing Specialist, Java Champion with 25+ Years of Experience
    RESOURCES
    aeron.io
    github.com/rea...
    Martin
    mechanical-sym...
    / mjpt777
    github.com/mjp...
    / martinjthompson
    ABSTRACT
    Common wisdom dictates that native languages are the only means of building high-performance applications. How do managed runtimes such as those available to .NET, Java, and even JavaScript, yes even JavaScript compare?
    Many applications requiring high-performance are now developed for managed runtimes - such as financial trading, data stores and analytics, messaging processing, and even supercomputing. Over the last few decades we have seen significant advances in managed runtimes, particularly for JIT compilers and garbage collectors.
    In this talk we will explore how our #ManagedRuntimes can equal, and even better in some cases, the performance of native languages.
    RECOMMENDED BOOKS
    Sourav Ghosh • Building Low Latency Applications with C++ • amzn.to/3szwUhV
    Steve Scargall • Programming Persistent Memory • amzn.to/3Pk79ex
    / gotocon
    / goto-
    / gotoconferences
    #LowLatency #FinTech #ContinuousDelivery #HighAvailability #Aeron #NFR #MTBF #MTTR #RTO #RPO #FaultTolerance #Async #MartinThompson #YOWcon
    Looking for a unique learning experience?
    Attend the next GOTO conference near you! Get your ticket at gotopia.tech
    Sign up for updates and specials at gotopia.tech/n...
    SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily.
    www.youtube.co...

КОМЕНТАРІ • 6

  • @GOTO-
    @GOTO-  Місяць тому

    We are currently releasing older YOW! videos to serve as a valuable archive, preserving historical content. It is possible that a video is perceived as outdated. We believe it offers insightful glimpses into the past, enriching our understanding of history and development.

  • @tylerbloom4830
    @tylerbloom4830 7 місяців тому +1

    The bit about polymorphism was interesting because that's how Rust does things but at compile time. Generics always get monomorphized.

  • @felixa4705
    @felixa4705 7 місяців тому +3

    It is clear to me that JITs have a lot of benefits for squeezing out extra performance at runtime, but these managed runtimes seem to do poorly when it comes to short lived applications. For example, command line applications written in Java tend to be pretty clunky and slow. IMO, the benefit of a compiled language is that you get consistent performance.

    • @Not_Today_1969
      @Not_Today_1969 7 місяців тому

      Java was not supposed to be used for scripting.

    • @felixa4705
      @felixa4705 7 місяців тому

      And it's totally fine that it wasn't! What I'm saying is that the performance model does preclude some workloads. It has higher highs because it can do clever stuff on your program, but it doesn't work for every situation (e.g. short lived processes) and can have fragile optimization (e.g., if you have unexpected mixes of subtypes messing with your caching). I don't think it's a problem with java or C#, just something to consider.

    • @Not_Today_1969
      @Not_Today_1969 7 місяців тому +1

      It's a problem with runtimes. 😊