- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
My host has 16GB RAM and FPGA also has 16GB RAM.
in my code, I try to create buffer and write data to buffer 16 times, every time will use 1 GB then release it.
for(int i=0; i<16; i++){
device_mem = clCreateBuffer(context, CL_MEM_READ_WRITE, GB, NULL, NULL);
err = clEnqueueReadBuffer(queue, device_mem, CL_TRUE, 0, chunk, device_data, 0, NULL, NULL);
clReleaseMemObject(device_mem);
}
but I will get
host: acl_mem.c:390: acl_bind_buffer_to_device: Assertion `mem' failed.
P.S. It work well if I create and release device_mem outside the loop.
Link kopiert
1 Antworten
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
You have defined your buffer size as "GB", is this expected? In which iteration do you get the error? There is no guarantee you would be able to allocate 16 GB on the device since parts of the device memory could be reserved for other operations.

Antworten
Themen-Optionen
- RSS-Feed abonnieren
- Thema als neu kennzeichnen
- Thema als gelesen kennzeichnen
- Diesen Thema für aktuellen Benutzer floaten
- Lesezeichen
- Abonnieren
- Drucker-Anzeigeseite