Closed Luthaf closed 3 months ago
Using the built-in profiler, I get the following timings:
Without sample selection:
╔════╦══════════════════════════════════════════════╦════════════╦═══════════╦══════════╦══════════╗
║ id ║ span name ║ call count ║ called by ║ total ║ mean ║
╠════╬══════════════════════════════════════════════╬════════════╬═══════════╬══════════╬══════════╣
║ 1 ║ Calculator::prepare ║ 1 ║ — ║ 942.11ms ║ 942.11ms ║
╠════╬══════════════════════════════════════════════╬════════════╬═══════════╬══════════╬══════════╣
║ 0 ║ NeighborsList ║ 1 ║ 1 ║ 342.48ms ║ 342.48ms ║
╠════╬══════════════════════════════════════════════╬════════════╬═══════════╬══════════╬══════════╣
║ 2 ║ NeighborList::compute ║ 1 ║ — ║ 1.98s ║ 1.98s ║
╚════╩══════════════════════════════════════════════╩════════════╩═══════════╩══════════╩══════════╝
With sample selection:
╔════╦══════════════════════════════════════════════╦════════════╦═══════════╦══════════╦══════════╗
║ id ║ span name ║ call count ║ called by ║ total ║ mean ║
╠════╬══════════════════════════════════════════════╬════════════╬═══════════╬══════════╬══════════╣
║ 1 ║ Calculator::prepare ║ 1 ║ — ║ 29.83s ║ 29.83s ║
╠════╬══════════════════════════════════════════════╬════════════╬═══════════╬══════════╬══════════╣
║ 0 ║ NeighborsList ║ 1 ║ 1 ║ 368.64ms ║ 368.64ms ║
╠════╬══════════════════════════════════════════════╬════════════╬═══════════╬══════════╬══════════╣
║ 2 ║ NeighborList::compute ║ 1 ║ — ║ 740.14ms ║ 740.14ms ║
╚════╩══════════════════════════════════════════════╩════════════╩═══════════╩══════════╩══════════╝
This is related to https://github.com/lab-cosmo/metatensor/issues/700. I also tried to do the selection using
selected_samples
, but this brought the NL calculation from ~3s to 30s on my machine.