question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

msvc9 32-bit builds are unusable

See original GitHub issue

numpy-1.10.0 compiled with Visual Studio 2008 for 32-bit Python fails many tests (only part of the output is shown):

Running unit tests for numpy
NumPy version 1.10.0
NumPy relaxed strides checking option: True
NumPy is installed in X:\Python27\lib\site-packages\numpy
Python version 2.7.10 (default, May 23 2015, 09:40:32) [MSC v.1500 32 bit (Intel)]
nose version 1.3.7
....F.FF.E........................................................................
<snip>
======================================================================
FAIL: test_api.test_array_array
----------------------------------------------------------------------
Traceback (most recent call last):
  File "X:\Python27\lib\site-packages\nose\case.py", line 197, in runTest
    self.test(*self.arg)
  File "X:\Python27\lib\site-packages\numpy\core\tests\test_api.py", line 75, in test_array_array
    assert_equal(dat, [49.0, 46.0, 48.0])
  File "X:\Python27\lib\site-packages\numpy\testing\utils.py", line 295, in assert_equal
    return assert_array_equal(actual, desired, err_msg, verbose)
  File "X:\Python27\lib\site-packages\numpy\testing\utils.py", line 782, in assert_array_equal
    verbose=verbose, header='Arrays are not equal')
  File "X:\Python27\lib\site-packages\numpy\testing\utils.py", line 708, in assert_array_compare
    raise AssertionError(msg)
AssertionError:
Arrays are not equal

(mismatch 100.0%)
 x: array([ 49.,  46.,  48.])
 y: array([ 49.,  46.,  48.])

======================================================================
FAIL: test_api.test_array_astype
----------------------------------------------------------------------
Traceback (most recent call last):
  File "X:\Python27\lib\site-packages\nose\case.py", line 197, in runTest
    self.test(*self.arg)
  File "X:\Python27\lib\site-packages\numpy\core\tests\test_api.py", line 187, in test_array_astype
    assert_equal(a, b)
  File "X:\Python27\lib\site-packages\numpy\testing\utils.py", line 295, in assert_equal
    return assert_array_equal(actual, desired, err_msg, verbose)
  File "X:\Python27\lib\site-packages\numpy\testing\utils.py", line 782, in assert_array_equal
    verbose=verbose, header='Arrays are not equal')
  File "X:\Python27\lib\site-packages\numpy\testing\utils.py", line 708, in assert_array_compare
    raise AssertionError(msg)
AssertionError:
Arrays are not equal

(mismatch 100.0%)
 x: array([[ 0.,  1.,  2.],
       [ 3.,  4.,  5.]], dtype=float32)
 y: array([[0, 1, 2],
       [3, 4, 5]])
<snip>
======================================================================
FAIL: test_inplace_floor_division_array_type (test_core.TestMaskedArrayInPlaceArithmetics)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "X:\Python27\lib\site-packages\numpy\ma\tests\test_core.py", line 2244, in test_inplace_floor_division_array_type
    assert_equal(len(w), 0, "Failed on type=%s." % t)
  File "X:\Python27\lib\site-packages\numpy\ma\testutils.py", line 130, in assert_equal
    raise AssertionError(msg)
AssertionError:
Items are not equal: Failed on type=<type 'numpy.int64'>.
 ACTUAL: 1
 DESIRED: 0

----------------------------------------------------------------------
Ran 5440 tests in 34.344s

FAILED (KNOWNFAIL=7, SKIP=9, errors=498, failures=221)

Reverting https://github.com/numpy/numpy/pull/6252 fixes this problem.

Builds using msvc9 64-bit, msvc10, msvc14, and icl do not show this problem.

I did not notice this before because I was testing the RCs with the Intel, not msvc, compilers.

Issue Analytics

  • State:closed
  • Created 8 years ago
  • Comments:48 (46 by maintainers)

github_iconTop GitHub Comments

1reaction
charriscommented, Oct 9, 2015

I’m going to guess the !(tmp == 0.) is optimized to tmp != 0., which is not quite the same thing.

0reactions
native-apicommented, Jul 8, 2016

@charris could you please comment on comment-146975795 at http://stackoverflow.com/q/38270589/648265 (or wherever)? Looks like what is says is not as true and common knowledge as you make it sound to be.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Why does MSVC defaults to the 32 bit toolset on x64 host ...
In my experience, this is true. The 32 bit toolchain has much better build throughput... at least until it runs out of virtual...
Read more >
Force SCons to use 32-bit MSVC compiler on 64-bit Windows
And now SCons will use 2010 (aka "Microsoft Visual Studio 10.0"), because all higher versions are unavailable.
Read more >
Cancelling a build doesn't always work properly, leaving the ...
Starting a build of a solution, then choosing cancel from the build menu often causes VS to 'hang' indefinitely. The hang is not...
Read more >
Configure Visual Studio C++ projects to Target 64-Bit, x64 ...
You can also migrate Win32 project settings into a 64-bit project ... see Set C++ compiler and build properties in Visual Studio.
Read more >
Windows: 32-bit build is broken hard (#4108) · Issues · Mesa ...
Mesa3D x86 32-bit build targeting Windows had a big regression in ... C++ compiler for the host machine: cl (msvc 19.28.29336 "Microsoft (R) ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found