Skip to content

Commit 88153bc

Browse files
committed
Clarify another problem.
1 parent 16e2e03 commit 88153bc

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,11 @@ If you start a pool of threads that are not Python threads, the Python code that
169169

170170
Therefore, in order to ensure correct memory tracking, Fil disables thread pools in BLAS (used by NumPy), BLOSC (used e.g. by Zarr), OpenMP, and `numexpr`.
171171
They are all set to use 1 thread, so calls should run in the calling Python thread and everything should be tracked correctly.
172-
The downside is that this can reduce performance in some cases, since you're doing computation with one CPU instead of many.
172+
173+
This has some costs:
174+
175+
1. This can reduce performance in some cases, since you're doing computation with one CPU instead of many.
176+
2. Insofar as these libraries allocate memory proportional to number of threads, the measured memory usage might be wrong.
173177

174178
Fil does this for the whole program when using `fil-profile run`.
175179
When using the Jupyter kernel, anything run with the `%%filprofile` magic will have thread pools disabled, but other code should run normally.

0 commit comments

Comments
 (0)