summaryrefslogtreecommitdiff
path: root/numpy/core/setup.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #23298 from seiko2plus/cpp_half_supportSebastian Berg2023-04-251-2/+3
|\ | | | | ENH: Extend the functionlty of C++ type `np::Half`
| * ENH: Extend the functionlty of C++ type `np::Half`Sayed Adel2023-04-051-2/+3
| | | | | | | | | | | | | | | | | | | | - optimize float/double conversions on x86, requires for now raising up the baseline features to `f16c` at least during the build. - optimize float/double conversions on ppc64le, requires for now raising up the baseline features to `VSX3` at least during the build. - Brings `np::Half` to npymath
* | BLD: use the C++ linker to link `_multiarray_umath.so`Ralf Gommers2023-04-161-3/+0
|/ | | | | | | This gets rid of undefined symbol issues for `assert`. Closes gh-23122 Closes gh-23595
* Merge pull request #23521 from seiko2plus/cpp_2017Charles Harris2023-04-041-41/+1
|\ | | | | ENH: Raise C++ standard to C++17
| * ENH: Raise C++ standard to C++17Sayed Adel2023-04-041-41/+1
| |
* | DOC: Fix typos & grammer in docstrings and comments (#23503)Pratyay Banerjee2023-03-301-1/+1
|/
* BLD: Check for submodules before build (#23372)Raghuveer Devulapalli2023-03-121-6/+10
| | | | | | | | | - DOC: update git clone command in doc to initialize submodules - BLD: Check for submodules before building - CI: update meson.build check and Cirrus for new git submodule [skip ci] Co-authored-by: Ralf Gommers <ralf.gommers@gmail.com>
* Merge pull request #23153 from seiko2plus/removes_old_cpu_dispatcherCharles Harris2023-02-221-24/+1
|\ | | | | SIMD: Get rid of attribute-based CPU dispatching
| * ENH, SIMD: dispatch the rest of all ufuncs with fast callsSayed Adel2023-02-201-1/+1
| |
| * MAINT, SIMD: Removes compiler definitions of attribute-based CPU dispatchingSayed Adel2023-02-201-24/+1
| |
* | Fixups, but npyiter is blocking me as it actually uses the "clear" logic onceSebastian Berg2023-02-191-0/+2
|/
* Merge pull request #22315 from r-devulap/avxsortMatti Picus2023-02-151-1/+2
|\ | | | | ENH: Vectorize quicksort for 16-bit and 64-bit dtype using AVX512
| * No need for add x86-simd-sort as global directorySayed Adel2023-02-071-1/+0
| |
| * ENH, SIMD: removes #NPY_ENABLE_AVX512_QSORT and use #directives insteadSayed Adel2023-02-071-17/+2
| |
| * ENH, SIMD: reimplement CPU dispatching of qsortSayed Adel2023-02-071-2/+2
| | | | | | | | For a Few C++ More
| * MAINT: Fix commentRaghuveer Devulapalli2023-01-301-4/+3
| |
| * ENH: Add AVX-512 based 16-bit dtype sortRaghuveer Devulapalli2023-01-301-1/+2
| | | | | | | | This reverts commit 138ba7583253e7540a206e7f0df3edcd5e26c518.
| * MAINT: Disable AVX-512 qsort on macOS and WIN32Raghuveer Devulapalli2023-01-301-1/+17
| |
| * Revert "ENH: Add AVX-512 based 16-bit dtype sort"Raghuveer Devulapalli2023-01-301-1/+0
| | | | | | | | This reverts commit 225c8bab83d239d8888bc7b688efed97ab2284cf.
| * ENH: Add AVX-512 based 16-bit dtype sortRaghuveer Devulapalli2023-01-301-0/+1
| |
| * ENH: Add AVX-512 based 64-bit dtype sortRaghuveer Devulapalli2023-01-301-1/+2
| |
* | ENH, SIMD: Only dispatch AVX2 for arithmetic operationsSayed Adel2023-01-291-0/+1
| | | | | | | | no performance gain with AVX512 enabled except for absolute
* | ENH: remove raw SIMD of complex operationsSayed Adel2023-01-291-2/+0
|/
* Merge pull request #22165 from ↵Matti Picus2023-01-291-0/+1
|\ | | | | | | | | Developer-Ecosystem-Engineering/simd_isnan_isinf_isfinite_signbit ENH: Implement SIMD versions of isnan,isinf, isfinite and signbit
| * re-enable vx and vxe (avoid perf regressions) for existing code by splitting ↵Developer-Ecosystem-Engineering2023-01-041-0/+1
| | | | | | | | this new code into a new file
* | MAINT: Move export for scipy arm64 helper into main moduleSebastian Berg2023-01-051-4/+4
|/ | | | | | | | | | | | | | | | | This is a follow up to gh-22679 which addressed gh-22673. The main thing is that we want the functions to be available after importing NumPy, so they need to be part of multiarray. However, `npymath` is a static library, so the symbols are not really exported there. The former PR did actually work in practice but this seems like it is technically the right place? For some reason, I had to add nextafter to be able to do: from scipy.spatial.distance import euclidean with the SciPy 1.9.3 wheels. SciPy test collection works with this for the 1.9.3 wheel, so this should be all the symbols hopefully.
* Merge pull request #22771 from seiko2plus/issue_22461Sebastian Berg2022-12-181-17/+20
|\ | | | | BUG, SIMD: Fix invalid value encountered in several ufuncs
| * ENH, SIMD: Add ordered comparison intrinsics guarantees non-signalingSayed Adel2022-12-141-17/+20
| |
* | MAINT: remove unused API documentation generationmattip2022-12-151-2/+2
| |
* | ENH: Add SIMD versions of bool logical_and, logical_or, logical_not and absoluteDeveloper-Ecosystem-Engineering2022-12-061-0/+1
|/ | | | | | NumPy has SIMD versions of BOOL `logical_and`, `logical_or`, `logical_not`, and `absolute` for SSE2. The changes here replace that implementation with one that uses their universal intrinsics. This allows other architectures to have SIMD versions of the functions too. BOOL `logical_and` and `logical_or` are particularly important for NumPy as that's how `np.any()` / `np.all()` are implemented.
* Merge pull request #22166 from Developer-Ecosystem-Engineering/add_simd_negativeMatti Picus2022-12-051-0/+1
|\ | | | | ENH: Add SIMD versions of negative
| * ENH: Add SIMD versions of negativeDeveloper-Ecosystem-Engineering2022-11-281-0/+1
| | | | | | | | NumPy already has SSE2 versions of `negative`. Changes here convert that to universal intrinsics so other architectures can benefit. Previously there was no unroll and SIMD was only used in contiguous cases. We're now unrolling 4x/2x depending on whether destination is contiguous. x86 doesn't perform as well for non-contiguous cases here, so we leave previous implementation / fall back to scalar. Additionally, we've added SIMD versions for ints.
* | MAINT: unify NPY_NO_SIGNAL macrosmattip2022-11-301-1/+1
|/
* MAINT: npymath cleanups for isnan, isinf, isinfinite, signbit, nextafter ↵Matti Picus2022-11-281-49/+1
| | | | | | | | | (#22684) * make isnan, isinf, isfinite, signbit, nextafter aliases * fixes from review Co-authored-by: Sebastian Berg <sebastianb@nvidia.com>
* Merge pull request #22679 from mattip/issue22673Ralf Gommers2022-11-271-1/+5
|\ | | | | BLD: revert function() -> #define for 3 npymath functions
| * BUILD: revert function() -> #define for 3 npymath functionsmattip2022-11-271-1/+5
| |
* | BLD: enable building NumPy with MesonRalf Gommers2022-11-251-0/+6
|/ | | | | | | | | | | | | | | | | | | This enables building with NumPy on Linux and macOS. Windows support should be complete to, but is untested as of now and may need a few tweaks. This contains: - A set of `meson.build` files and related code generation script tweaks, header templates, etc. - One CI job on Linux - Basic docs on using Meson to build NumPy (not yet integrated in the html docs, it's too early for that - this is for early adopters right now). The build should be complete, with the major exception of SIMD support. The full test suite passes. See gh-22546 for the tracking issue with detailed notes on the plan for switching NumPy to Meson as its build system. Co-authored-by: Stefan van der Walt <stefanv@berkeley.edu>
* Merge pull request #22168 from ↵Matti Picus2022-10-201-13/+23
|\ | | | | | | | | Developer-Ecosystem-Engineering/remove_Avx_when_not_used ENH: Remove AVX related functions from non x86 based builds
| * review feedback, make lint happyDeveloper-Ecosystem-Engineering2022-10-191-20/+17
| |
| * ENH: Remove AVX related functions from non x86 based buildsDeveloper-Ecosystem-Engineering2022-08-231-4/+17
| | | | | | | | | | | | | | | | | | | | | | Apple silicon builds of NumPy have extra functions in them for AVX2/AVX512. The changes here remove those implementations if we're not building for x86. Apple silicon: - original size: 3946035 bytes - new size: 3657731 bytes - savings: 288304 bytes (7.31%) Changes pass all tests on M1 native, M1 Rosetta, and iMacPro (AVX512). We've verified performance is the same before/after for Rosetta and iMacPro. We've also verified that binaries are exactly the same size and have the same number of symbols in them.
* | Merge pull request #22161 from mattip/simplify-npy_math2Matti Picus2022-10-061-4/+8
|\ \ | | | | | | MAINT: simplify complex math function handling in npymath
| * | BLD: Add mandatory complex math feature detection with signatureSebastian Berg2022-09-281-4/+8
| | |
* | | ENH: Vectorize FP16 math functions on Intel SkylakeXRaghuveer Devulapalli2022-09-261-1/+0
|/ /
* | MAINT: fix defines for universal2 python builds of NumPymattip2022-08-241-0/+4
|/
* BUILD: convert HAVE_ macros to BLOCK_, cleanupmattip2022-08-211-1/+0
|
* restore atan2 implementation, clean up c99 mandatory functionsmattip2022-08-211-4/+0
|
* restore HAVE_LOG2 for cygwin blocklistingwmattip2022-08-211-0/+1
|
* make optional C99 double routines mandatorymattip2022-08-211-14/+7
|
* DEP: drop support for msvc<=1900 and Interix (#22139)Matti Picus2022-08-191-8/+0
| | | | | [ci skip] Co-authored-by: h-vetinari <h.vetinari@gmx.com>
* numpy/core/setup.py (can_link_svml): Return False for 32bit builds on x86_64Matthias Koeppe2022-06-301-1/+3
|