Objet : Developers list for StarPU
Archives de la liste
- From: Mirko Myllykoski <mirkom@cs.umu.se>
- To: Starpu Devel <starpu-devel@lists.gforge.inria.fr>
- Subject: Re: [Starpu-devel] StarPU 1.3 does not purge GPU memory
- Date: Wed, 16 Jan 2019 16:34:22 +0100
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=mirkom@cs.umu.se; spf=Pass smtp.mailfrom=mirkom@cs.umu.se; spf=None smtp.helo=postmaster@mail.cs.umu.se
- Ironport-phdr: 9a23:3URaph1gD/mNOWdUsmDT+DRfVm0co7zxezQtwd8ZseIWIvad9pjvdHbS+e9qxAeQG9mDu7Qc06L/iOPJYSQ4+5GPsXQPItRndiQuroEopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZvJuTyB4Xek9m72/q99pHPYAhEniaxba9vJxiqsAvdsdUbj5F/Iagr0BvJpXVIe+VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PGAv5c3krgfMQA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7Vq4/Vyi84Kh3SR/okCYHOCA/8GHLkcx7kaZXrAu8qxBj34LYZYeYP+d8cKzAZ9MXXWVOUdpeWSJPAo2ycZYBAOgPPehboIjyqUADrQe8CAmuGO/j1iVFimHw0KYn0+ohCwbG3Ak4EtwJsXTUttb1NKAPWu6yzKjIyTHDbvNV2Tf684jIcREhquyLULJ1cMrR00ovFwTAjliLtYPlJCmZ1vkIs2iG9eZgTvyghnchpgpsoTav3t8hhpTHi44J0FzI6yt0zYIvKdC3VEJ3e8CoHZtIuy2EK4d6Xt4uTmRptSkh1rELvIC0cS0FxZg7yBPTd/mKfo2J7x/gUuuaPC12i2h/eL2lgha/6UigxfP4VsmzyFtKqzBKktjItnwXyxPT8dKLSuZ4/ke8wzqPzB7c5vlFIUAyi6XbN4YszqM+m5YPq0jPACH7lUHsgKKZakko4Pak5uT/brXjvJCcNot0ig/kMqQpn8yyGeE4MgkUX2iY/uS80abu8lHiQLlQk/02l7TZvIrBJcsFvqK5GRNa0p4/6xajCDeryM8YnWUdI1JfYBKHkpHlNEzQL/DmE/i/h0+hkDNqx/DdIr3hGY/BLnfNkLfmZ7Z95FBTxBAyzdBZ/ZJUC6sOLOj9Wk/r55TkCUoCLwWu2/uvJNhj24dWDXmTC7WBLebevEGF4sorIvKQf8katjHnJPVj5vj0jHZ/l0VLLoez2p5CTXGiHfMuBlSdZWvvhcwCEC9euwskT+vvoFaZFyNWejCpUvRvtXkAFIu6ANKbFciWi7ub0XL+R8UOPzEUOhW3CX7tMr68dbIJYSOWLNVml2VdB7O6DZIkyFe1uV2jkuY1Hq/v4iQd8Knb+p1t/eSKzEM57nppCtnbyGzfFzgpzFNNfCc/2eVEmWI4ylqH1vEm0flRFNgV7OgPTwInc4XRnbR3
- List-archive: <http://lists.gforge.inria.fr/pipermail/starpu-devel/>
- List-id: "Developers list. For discussion of new features, code changes, etc." <starpu-devel.lists.gforge.inria.fr>
Hi,
I should add that my StarPU 1.2.6 build has been compiled with --disable-cuda-memcpy-peer and patched with 8c35781b0ac517304ac2f2461b243b4447c38ab3 (Enable suballocator for pinned main RAM which is expensive).
- Mirko
On 2019-01-16 16:04, Mirko Myllykoski wrote:
Hi,
I have noticed that the StarPU 1.3 nightly snapshots have a problem
where the library does not purge the GPU memory when it is necessary.
Instead, the ptr field in the interface ends up begin a NULL pointer.
The problem can be reproduced with the following example code:
#include <unistd.h>
#include <starpu.h>
// more loop iterations are required when the GPU has a lot of memory
#define ITER 100
static void kernel(void *buffers[], void *cl_args)
{
printf("Pointer is %lu\n", (uintptr_t) STARPU_MATRIX_GET_PTR(buffers[0]));
}
static struct starpu_codelet codelet = {
.name = "codelet",
.cuda_funcs = { kernel },
.nbuffers = 1,
.modes = STARPU_SCRATCH
};
int main()
{
if (starpu_init(NULL) != 0)
return 1;
starpu_data_handle_t handle[ITER];
for (int i = 0; i < ITER; i++) {
starpu_matrix_data_register(
&handle[i], -1, 0, 10000, 10000, 1000, sizeof(double));
starpu_task_insert(&codelet, STARPU_SCRATCH, handle[i], 0);
}
starpu_task_wait_for_all();
for (int i = 0; i < ITER; i++)
starpu_data_unregister(handle[i]);
starpu_shutdown();
return 0;
}
StarPU 1.2.6 outputs the following:
Pointer is 140366414086144
Pointer is 140366332297216
...
Pointer is 140363469684736
Pointer is 140363387895808
[starpu][_starpu_memory_reclaim_generic] Not enough memory left on
node CUDA 0. Your application data set seems too huge to fit on the
device, StarPU will cope by trying to purge 908 MiB out. This message
will not be printed again for further purges
Pointer is 140366495875072
Pointer is 140366414086144
....
Pointer is 140365023674368
Pointer is 140363387895808
Pointer is 140364941885440
StarPU 1.3 nightly snapshots output the following:
Pointer is 140073297248256
Pointer is 140073215459328
...
Pointer is 140070434635776
Pointer is 140070352846848
Pointer is 140070271057920
Pointer is 140070189268992
Pointer is 0
Pointer is 140070107480064
Pointer is 0
Pointer is 140073297248256
Pointer is 0
Pointer is 140073215459328
...
Pointer is 140071170736128
Pointer is 0
Pointer is 140071088947200
Pointer is 0
Pointer is 140071007158272
Pointer is 0
- Mirko Myllykoski
- [Starpu-devel] StarPU 1.3 does not purge GPU memory, Mirko Myllykoski, 16/01/2019
- Re: [Starpu-devel] StarPU 1.3 does not purge GPU memory, Mirko Myllykoski, 16/01/2019
- Re: [Starpu-devel] StarPU 1.3 does not purge GPU memory, Samuel Thibault, 16/01/2019
Archives gérées par MHonArc 2.6.19+.