Hi Håvard,
Haven’t used multithread access to the memorystore yet…
I do have access to a cheap “server” (consumer grade AMD Ryzen 5 3600 with 6c/12t) and JDK 17, so I’ll give that a spin.
Best regards
Bart
From: rdf4j-dev <rdf4j-dev-bounces@xxxxxxxxxxx>
On Behalf Of Håvard Ottestad
Sent: dinsdag 9 november 2021 7:23
To: rdf4j developer discussions <rdf4j-dev@xxxxxxxxxxx>
Subject: [rdf4j-dev] Multithreaded access to the MemoryStore
Hi,
I’ve upgraded my laptop just a few days ago to a shiny new MacBook with 8+2 ARM cores. It’s a nice upgrade to my 9 year old MacBook with a quad core Intel processor.
Things are definitely snappier, but I’m struggling to get much performance improvement when comparing single threaded SHACL validation to parallel validation.
Profiler says that there are three major issues of overhead and contention are:
- retrieving the mem-versions of values from the mem value store
- keeping track of active iterators
Might be that the arm version of jdk 17 still needs optimizations to make locks faster, or maybe it’s due to the arm memory model being more relaxed than the Intel one.
Anyone else run into the same issues?
Or someone with an 8+ core Intel/amd machine who would like to test it out? I’m using the benchmark linked below and not seeing much difference when enabling/disabling parallel validation.