@@ -150,33 +150,33 @@ namespace resources
150150
151151 // Memory
152152 template <typename T>
153- T *allocate (size_t size)
153+ T *allocate (size_t size, MemoryAccess ma = MemoryAccess::Device )
154154 {
155155 T *ret = nullptr ;
156156 if (size > 0 ) {
157157 ret = sycl::malloc_shared<T>(size, *qu);
158158 switch (ma) {
159159 case MemoryAccess::Unknown:
160160 case MemoryAccess::Device:
161- ret = sycl::malloc_device ( sizeof (T) * size, *qu);
161+ ret = sycl::malloc_device<T>( size, *qu);
162162 break ;
163163 case MemoryAccess::Pinned:
164- ret = sycl::malloc_host ( sizeof (T) * size, *qu);
164+ ret = sycl::malloc_host<T>( size, *qu);
165165 break ;
166166 case MemoryAccess::Managed:
167- ret = sycl::malloc_shared ( sizeof (T) * size, *qu);
167+ ret = sycl::malloc_shared<T>( size, *qu);
168168 break ;
169169 }
170170 }
171171 return ret;
172172 }
173- void *calloc (size_t size)
173+ void *calloc (size_t size, MemoryAccess ma = MemoryAccess::Device )
174174 {
175- void *p = allocate<char >(size);
175+ void *p = allocate<char >(size, ma );
176176 this ->memset (p, 0 , size);
177177 return p;
178178 }
179- void deallocate (void *p) { sycl::free (p, *qu); }
179+ void deallocate (void *p, MemoryAccess ma = MemoryAccess::Device ) { sycl::free (p, *qu); }
180180 void memcpy (void *dst, const void *src, size_t size)
181181 {
182182 if (size > 0 ) {
0 commit comments