You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
However the VRAM this takes is much higher than doing this with typical RAM. The object X takes up approx. 38 Mb of RAM where gpuX takes up over 700 MiB VRAM. Am I doing this correctly, or have I gone wrong somewhere or are there configurations that I need to tweak?
I'm using an Nvidia GeForce GTX 1050 with 1 GiB memory.
Thanks for reporting your issue. You have encountered two problems with gpuR currently. To address you first concern regarding solve returning vclMatrix. This was an intentional decision on my part to make the function more efficient. Internally, this allowed the output matrix to be initialized on the device (e.g. GPU) and thereby avoid copying data from host to the device. At the same time, it avoids bringing the data back to the host when completed. I'm not sure there would be a great benefit to forcing it to move back to a gpuMatrix but perhaps I still should to maintain consistency with how the rest of the package API works (i.e. gpuMatrix in -> gpuMatrix out).
Second, the memory issue is definitely a known problem. This is because of the automatic padding done by ViennaCL in increments of 128. As such, although your initial matrix only has 5 columns, the internal matrix object actual has 128. Allowing for the creation of unpadded matrices is scheduled for the next release of ViennaCL as noted in the issue here.
After thinking about this more I think I will change the solve function to still return to gpuMatrix. This one exception flies in the face of the way the rest of the package works so it should be the same. I will change it in the develop branch in the coming days and it will be part of the 2.1.0 release.
…g a non-identity matrix. The intention is to create identity matrices on the device to avoid the data transfer with gpuMatrix calls. This needed a flag to note when this shouldn't be the case. This should fix the broken unit tests.
So, in trying to do a simple regression with
gpuR
I've run into a problem... when I test the following code:I get the following error for
gpuBeta <- solve(t(gpuX)%*%gpuX)%*%t(gpuX)%*%gpuY
:I don't get the error any more when I change the objects to class
vclMatrix
:However the VRAM this takes is much higher than doing this with typical RAM. The object
X
takes up approx. 38 Mb of RAM wheregpuX
takes up over 700 MiB VRAM. Am I doing this correctly, or have I gone wrong somewhere or are there configurations that I need to tweak?I'm using an Nvidia GeForce GTX 1050 with 1 GiB memory.
The text was updated successfully, but these errors were encountered: