Comments (5)
Can something like valgrind maybe provide details on where those allocations are taking place?
from pyopencl.
Here are the valgrind
"massif" profile for two calls of the program when running on a limited number of images (2000), with and without profiling activated. Valgrind still suggests to look at h5py
rather than pyopencl
but the triggering of the option makes 16G difference in memory consumption.
from pyopencl.
I run it several other times and it looks like the profiling in OpenCL prevents the memory from being freed.
from pyopencl.
So I tired to collect only timestamps for each event instead of the complete process.
The patch is for now implemented in:
silx-kit/silx#3690
The memory profile looks like this, now. One would have expected 10 memory free (since 10 files are processed) but fewer are visible.
from pyopencl.
I got struck by something similar in another project ... but profiling was not involved this time.
https://github.com/kif/multianalyzer/blob/main/multianalyzer/opencl.py
The pattern was similar: read data from an HDF5 file with large chunks and send them to the GPU ...
But once again, unable to reproduce the behaviour within a self contained script.
Calling the pyopencl.array method finalize
helps in freeing the memory on the CPU
from pyopencl.
Related Issues (20)
- Memory issue on cauculations of pyopencl.array.Array HOT 4
- Crash in test_slice on Intel CL HOT 7
- abrupt in code HOT 3
- SVM `bind_to_queue` and `unbind_queue` cannot be safely used
- Array allocation failure HOT 2
- TypeError: __class__ assignment: 'KernelWithCustomEnqueue' object layout differs from 'pyopencl._cl.Kernel' HOT 2
- New np.isscalar checks in array arithmetic break operations with unit-length arrays HOT 1
- Array: check that queues match
- source tarball contains binary artefact _skbuild/linux-x86_64-3.11/cmake-install/pyopencl/_cl.cpython-311-x86_64-linux-gnu.so HOT 1
- test_clmath.py::test_fmod fails on i386 using pocl 3.1 built with llvm 15 HOT 2
- Disable kernel caching from within pyopencl code HOT 1
- Expose create_buffer_gc in a header HOT 4
- Binary operations with Arrays of different memory layout HOT 2
- Windows Intel CL Github CI fails HOT 2
- Fails to build with OpenCL 3.0 headers HOT 3
- UHD Graphics 600 | Calling kernel + enqueue_copy more than once, results in OUT_OF_RESOURCES error or freeze HOT 4
- Compatibility with `numpy2` HOT 3
- move away from deprecated appdirs
- `build program` times increasing with rank count on Mac when caching is enabled HOT 7
- Pocl Mac crashing again HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyopencl.