Thinking of creating a High Frequency Transaction Trading system to test my Algo Trading Strategies. Infrastructure will be AWS EC2 Graviton 3 instance (C7g) + AWS Linux2 + AWS Corretto JVM runtime OR OpenJDK GraalVM distribution. Why Graalvm because its Polyglot and reduces the contextual switch (Marshaling/Un-Marshaling ) between Data Structures of different programing languages. AWS EC2 Graviton 3 coming with more than 100 virtual cores and more than 100 MB of L1 + L2 + L3 cache. Pre-compiled native ARM CPU instructions will be saved in the CodeCache. Data Analytics will be done by Apache Spark 3 and code will JIT aware (Mostly in Scala and R). Data will be populated from SSDs and processed in RAM.
Questions
- Will Amazon Corretto or GraalVM capable of generating executable native instructions and interpreting towards ARM based Graviton CPU.
- Amazon Corretto is a flavor of OpenJDK. Does the Project GraalVM already merged with Amazon Corretto JVM. Can I replace Java on Truffle - Mete Circular JIT as C2 compiler of Amazon Corretto JVM.
- Where I can refer guides or whitepapers related to Amazon Corretto supporting OpenJDK JEPs and projects.
- Which super super quick programing language as a choice to write my Algo trading business logic. Expecting a nanosecond latency from the time of a signal enters the Ethernet port of a microprocessor and returns back the result.
Better Suggestions and questions are always appreciated.