Skip to content

Commit 745e93f

Browse files
fix: cache Module loopkups in collect.py for better efficiency.
1 parent bac1d3c commit 745e93f

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

arts-main/profile/collect.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ def _init(self):
4343
self.data = {}
4444
self.runtimes = {}
4545
self.modules = {}
46+
self._files = {}
4647

4748
def _as_uint8(self, x):
4849
"""Cast string UUID as dense uint8 buffer."""
@@ -81,7 +82,10 @@ def register_module(self, module_id, module_name):
8182

8283
def _module_index(self, module_id):
8384
"""Get source file index for module UUID."""
84-
return Module.objects.get(pk=module_id).source.index
85+
if module_id not in self._files:
86+
self._files[module_id] = (
87+
Module.objects.get(pk=module_id).source.index)
88+
return self._files[module_id]
8589

8690
def save(self):
8791
"""Save chunk and start new."""

0 commit comments

Comments
 (0)