Skip to content

Instantly share code, notes, and snippets.

@OscarL
Created November 2, 2023 09:38
Show Gist options
  • Save OscarL/353a05572ac5736384860154f2dd5748 to your computer and use it in GitHub Desktop.
Save OscarL/353a05572ac5736384860154f2dd5748 to your computer and use it in GitHub Desktop.
Timings of some queries on Haiku beta4 (indexed vs non-indexed attributes, first, vs repeated runs, exact vs "glob" queries, BFS vs PackageFS.
///////////////////////////////////////////////////////////////////////////////
// Beta4, 64 bits, SATA HDD 5400 RPM:
///////////////////////////////////////////////////////////////////////////////
[~/Desktop ]
> df
Mount Type Total Free Flags Device
----------------- --------- --------- --------- ------- ------------------------
/boot bfs 20.0 GiB 9.7 GiB QAM-P-W /dev/disk/ata/1/master/2_1
/boot/system packagefs 4.0 KiB 4.0 KiB QAM-P--
/boot/home/config packagefs 4.0 KiB 4.0 KiB QAM-P--
/boot/system/var/shared_memory
ramfs 0 7.0 GiB QAM-PRW
///////////////////////////////////////////////////////////////////////////////
// Non indexed attributes:
> time query -v /boot/system BEOS:TYPE=="application/x-vnd.Be-bookmark"
[ no results, forgot to add name="**"&& ]
real 0m0,028s
user 0m0,023s
sys 0m0,005s
> time query -v /boot/system 'name=="**"&&BEOS:TYPE=="application/x-vnd.Be-bookmark"'
[ no results ]
real 1m27,642s
user 0m0,023s
sys 0m6,285s
> time query -v /boot/system 'name=="**"&&BEOS:TYPE=="application/x-vnd.Be-bookmark"'
[ no results ]
real 0m0,622s
user 0m0,023s
sys 0m0,598s
> time query -v /boot 'name=="**"&&BEOS:TYPE=="application/x-vnd.Be-bookmark"'
/boot/home/config/settings/WebPositive/Bookmarks/Documentation/BeBook
[ ~20 results more ]
real 9m3,651s
user 0m0,024s
sys 0m2,073s
> time query -v /boot 'name=="**"&&BEOS:TYPE=="application/x-vnd.Be-bookmark"'
/boot/home/config/settings/WebPositive/Bookmarks/Documentation/BeBook
[ ~20 results more ]
real 0m0,281s
user 0m0,023s
sys 0m0,256s
///////////////////////////////////////////////////////////////////////////////
// Indexed attributes:
// First time right after booting:
> time query -v /boot name=test
[ ~40 results ]
real 0m0,837s
user 0m0,024s
sys 0m0,009s
// Second time:
> time query -v /boot name=test
[ ~40 results ]
real 0m0,029s
user 0m0,023s
sys 0m0,005s
// First time right after a reboot:
> time query -v /boot/ name=*test*
[ ~2200 results ]
real 0m49,496s
user 0m0,057s
sys 0m0,240s
// Second time:
> time query -v /boot/ name=*test*
[ ~2200 results ]
real 0m0,138s
user 0m0,041s
sys 0m0,095s
// First time right after a reboot:
> time query -a name=*test*
[ ~6400 results ]
real 0m50,537s
user 0m0,088s
sys 0m0,563s
// Second time
> time query -a name=*test*
[ ~6400 results ]
real 0m0,460s
user 0m0,070s
sys 0m0,387s
> time query -v /boot/system name=test
[ 8 results ]
real 0m0,028s
user 0m0,023s
sys 0m0,004s
> time query -v /boot/system name=*test*
[ 4200 results ]
real 0m0,337s
user 0m0,052s
sys 0m0,284s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment