BaseX performance with Apple M1 Max
Hi, all,
I just had my five-year workstation upgrade for my work laptop. Since BaseX is my main productivity tool, I was curious to test performance on the new hardware.
Old machine: 2016 MacBook Pro 2.6 GHz Quad-Core Intel Core i7 16 GB 2133 MHz LPDDR3
New machine: 2021 MacBook Pro Apple M1 Max 32 GB unified memory
With BaseX 9.7.3 beta, I tested a 4.11 GB XML document that has a series of *entry *elements, each representing a name from our library catalog. On the old machine, it took 9 minutes to create a database from this file, with text and full-text indexes. On the new machine, it took 3.5 minutes.
I ran the following query on both machines:
<data>{
for tumbling window $entry in /*/entry
start $s next $sn when starts-with($sn/key, $s/key)
end $e next $en when not(starts-with($en/key, $e/key))
return
<group id="{$entry/@id}">{$entry/key}</group>
}</data>On the old machine, execution time ranged from 40s to 47s. On the new machine, it ranged from 11.5s to 18s.
In short, it looks as though I'll be a lot more productive now! :)
Tim
Written for BaseX 9.7. BaseX may have changed since: please check the current documentation.