[xsd-users] CodeSynthesis/tree (version 4.0.0) and Nvidia NVCC compiler (CUDA version 7.0)

All Herald loredofilms1 at yahoo.com
Thu Jul 9 16:06:47 EDT 2015


Thanks for the response. Looked at XSD/e and still having the same issue. The problem is that the NVCC Compiler (CUDA 7.0) has this hard memory limitation.  Even with a fairly small schema of just a few bytes if you make repeated calls the global const memory accumulates and very soon you hit that hard limit imposed by the NVCC Compiler. So the issue quite frankly is with the compiler, but that being said, the compiler is what it is. Would you be able to download the the NVCC CUDA 7 compiler and take a look at this if I send you a small example? You can probably recreate this easily of you try and compile and link using a small schema repeatedly and includes the CodeSynthesis headers. One possible way around this was to potentially to try and use precompiled headers, but alas the NVCC compiler does not currently support this feature. 
As mentioned before support for this compiler would broaden the reach of CodeSynthesis to anyone doing heavy quantitative work using GPUs.       From: Boris Kolpackov <boris at codesynthesis.com>
 To: All Herald <loredofilms1 at yahoo.com> 
Cc: "xsd-users at codesynthesis.com" <xsd-users at codesynthesis.com> 
 Sent: Wednesday, July 1, 2015 12:27 PM
 Subject: Re: [xsd-users] CodeSynthesis/tree (version 4.0.0) and Nvidia NVCC compiler (CUDA version 7.0)
   
Hi All,



All Herald <loredofilms1 at yahoo.com> writes:

> 3) Making CodeSynthesis more usable within CUDA-based applications should
> be valuable to many other users since virtually all computationally heavy
> calculations nowadays is being done using GPUs.

We would definitely consider making it usable on CUDA/NVCC if there
are sensible changes that we can make to the generated code. Do you
know what exactly in the generated headers exhausts this "global
constant memory"? Also, how big is the schema? I have seen specimens
with thousands of type that exhausted memory of build machines with
tens of gigabytes of RAM.

Finally, have you considered using XSD/e and its much more light-weight
C++/Hybrid object model instead?

Boris


  


More information about the xsd-users mailing list