On 6/27/2011 8:56 AM, Andreas Kloeckner wrote:
Hi all,

I've just released PyCUDA version 2011.1. This is, once again, a rather
big release. A detailed list of changes is below. In the same spirit as
PyOpenCL (whose 2011.1 release happened yesterday), I'll try to move to
smaller, more frequent releases in the future.

Have fun, and let me know if there are any issues.

Andreas


Hello,

I noticed two problems on Windows:

1) PyCUDA will not work at all if the "HOME" environment variable is not defined, which is the case on many Windows systems. Maybe it's better to use the "USERNAME" variable if possible (in line 155 of compiler.py)

2) One test fails (see output below) because `numpy.random.random_integers(0, (1 << 31) - 1, 1000)` does not work on Windows. With `(1 << 31) - 2` all tests pass (line 492 in curandom.py).

Christoph


pycuda-2011.1\test>python27-x64 test_gpuarray.py
============================= test session starts =============================
platform win32 -- Python 2.7.2 -- pytest-2.0.3
collected 41 items

test_gpuarray.py ............F............................

================================== FAILURES =================================== ______________________ TestGPUArray.test_curand_wrappers ______________________

    def f(*args, **kwargs):
        import pycuda.driver
# appears to be idempotent, i.e. no harm in calling it more than once
        pycuda.driver.init()

        ctx = make_default_context()
        try:
            assert isinstance(ctx.get_device().name(), str)
            assert isinstance(ctx.get_device().compute_capability(), tuple)
            assert isinstance(ctx.get_device().get_attributes(), dict)
          inner_f(*args, **kwargs)

X:\Python27-x64\lib\site-packages\pycuda\tools.py:553:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <test_gpuarray.TestGPUArray instance at 0x00000000080E5D08>

    @mark_cuda_test
    def test_curand_wrappers(self):
        from pycuda.curandom import get_curand_version
        if get_curand_version() is None:
            from pytest import skip
            skip("curand not installed")


        from pycuda.curandom import (
                XORWOWRandomNumberGenerator,
                Sobol32RandomNumberGenerator)

        if has_double_support():
            dtypes = [np.float32, np.float64]
        else:
            dtypes = [np.float32]

        for gen_type in [
                XORWOWRandomNumberGenerator,
                #Sobol32RandomNumberGenerator
                ]:
          gen = gen_type()

test_gpuarray.py:276:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <pycuda.curandom.XORWOWRandomNumberGenerator object at 0x0000000008159668

seed_getter = None, offset = 0

    def __init__(self, seed_getter=None, offset=0):
        """
:arg seed_getter: a function that, given an integer count, will yield an `int32`
                  :class:`GPUArray` of seeds.
                """

        super(XORWOWRandomNumberGenerator, self).__init__(
            'curandStateXORWOW', xorwow_random_source)

        if seed_getter is None:
            seed = array.to_gpu(
                    np.asarray(
                        np.random.random_integers(
                          0, (1 << 31) - 1, self.generators_per_block),

X:\Python27-x64\lib\site-packages\pycuda\curandom.py:492:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

  ???

mtrand.pyx:1177:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

  ???
E   OverflowError: Python int too large to convert to C long

mtrand.pyx:871: OverflowError
===================== 1 failed, 40 passed in 4.35 seconds =====================

_______________________________________________
PyCUDA mailing list
[email protected]
http://lists.tiker.net/listinfo/pycuda

Reply via email to