Posts

Java 21 Virtual threads

 Java 21 VirtualThreads  Recently I was reading over Java 21 release notes and one feature that caught my attention was Virtual Threads. In this blog post I will explore how Virtual threads can be better than platform threads with some examples.  The intention of this blog post is more towards trying to benchmark their performance across various tasks. This is to make sure I understand the strengths of virtual threads and where to use them rather than providing any verdict on use of virtual threads.   From what I understand from the documentation of JEP 444 (https://openjdk.org/jeps/444), Virtual threads provide greater flexibility in parallelizing workloads since  each virtual thread can be mapped to the same OS thread and so have the following main advantages 1) The number of virtual threads that can be spawned is much higher than the number of platform threads enabling thread-per-request style 2) Virtual threads improve scalability with asynchronous styl...

Exploring MemGraph & MAGE

 In this post I will be exploring Memgraph and MAGE to understand more about the scalability and support for machine learning in Memgraph.  As I was interested in understanding more about the Gaia astrometry/photometry data as well, I will use the csv files from Gaia archive to load the data into memgraph and try to see if i can explore any algorithms from MAGE.  Of course, Gaia data might not exactly be a fit for a graph database but still want to use this data to explore the scalability and performance of Memgraph My intention is to get an estimate of the machine configuration to run machine learning algorithms from MAGE and also the replication configurations for high throughput and low latency.  I will start with single machine non-replicated setup and later move to a replicated setup to compare the replicated and non-replicated setup.  Since this task involves multiple items to explore I intend to split this post into multiple parts  1) Loading data to...