google-code-export / thrust

Automatically exported from code.google.com/p/thrust
Apache License 2.0
2 stars 2 forks source link

internal/reduce_intervals.inl brings in CUDA-specific headers #473

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
seems to be #included unconditionally somewhere

Original issue reported on code.google.com by jaredhoberock on 16 Feb 2012 at 7:35

GoogleCodeExporter commented 9 years ago
reduce_intervals needs to be dispatched via ADL similarly to 
default_decomposition to avoid #including system-specific headers

Original comment by jaredhoberock on 17 Feb 2012 at 12:06

GoogleCodeExporter commented 9 years ago
I think it may be best to eliminate generic uses of reduce_intervals from the 
backends.  At one point I thought it might be a useful sub-primitive, but I 
don't believe we make productive use of that anywhere.

I'll take care of this one.

Original comment by wnbell on 17 Feb 2012 at 12:22

GoogleCodeExporter commented 9 years ago
i've already done it

Original comment by jaredhoberock on 17 Feb 2012 at 12:24

GoogleCodeExporter commented 9 years ago
wait, you said you want to eliminate it entirely? it's all yours then

Original comment by jaredhoberock on 17 Feb 2012 at 12:26

GoogleCodeExporter commented 9 years ago
here is a reproducer:

#include <thrust/device_vector.h>

int main()
{
  return 0;
}

jhoberock@jhoberock-dt:~/dev/hg/thrust-tot$ g++ -I. test.cpp 
-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_OMP
In file included from ./thrust/system/cuda/detail/arch.inl:24:0,
                 from ./thrust/system/cuda/detail/arch.h:175,
                 from ./thrust/system/cuda/detail/detail/launch_closure.h:21,
                 from ./thrust/system/cuda/detail/reduce_intervals.inl:25,
                 from ./thrust/system/cuda/detail/reduce_intervals.h:51,
                 from ./thrust/system/detail/internal/reduce_intervals.inl:24,
                 from ./thrust/system/detail/internal/reduce_intervals.h:49,
                 from ./thrust/system/detail/internal/reduce.inl:23,
                 from ./thrust/system/detail/internal/reduce.h:47,
                 from ./thrust/system/omp/detail/reduce.inl:19,
                 from ./thrust/system/omp/detail/reduce.h:52,
                 from ./thrust/system/omp/detail/algorithm.h:33,
                 from ./thrust/system/omp/memory.h:410,
                 from ./thrust/detail/adl_helper.h:42,
                 from ./thrust/detail/reference.inl:27,
                 from ./thrust/detail/reference.h:144,
                 from ./thrust/memory.h:25,
                 from ./thrust/device_ptr.h:25,
                 from ./thrust/device_malloc_allocator.h:25,
                 from ./thrust/device_vector.h:25,
                 from test.cpp:1:
./thrust/system/cuda/detail/guarded_cuda_runtime_api.h:38:30: fatal error: 
cuda_runtime_api.h: No such file or directory
compilation terminated.

Original comment by jaredhoberock on 17 Feb 2012 at 12:29

GoogleCodeExporter commented 9 years ago
nevermind, i'll take it

Original comment by jaredhoberock on 17 Feb 2012 at 12:32

GoogleCodeExporter commented 9 years ago
This issue was closed by revision 729c4da38ce5.

Original comment by jaredhoberock on 17 Feb 2012 at 2:05