Skip to content

Commit

Permalink
* Upgrade presets for CPython 3.12.7, NumPy 2.1.2, SciPy 1.14.1, ONN…
Browse files Browse the repository at this point in the history
…X 1.17.0, ONNX Runtime 1.19.2
  • Loading branch information
saudet committed Oct 6, 2024
1 parent dc8e6a5 commit 1b963b2
Show file tree
Hide file tree
Showing 102 changed files with 1,326 additions and 137 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
* Build FFmpeg with zimg to enable zscale filter ([pull #1481](https://github.com/bytedeco/javacpp-presets/pull/1481))
* Enable PulseAudio support for FFmpeg on Linux ([pull #1472](https://github.com/bytedeco/javacpp-presets/pull/1472))
* Virtualize `btCollisionWorld`, `btOverlapFilterCallback`, `btOverlapCallback` from Bullet Physics SDK ([pull #1475](https://github.com/bytedeco/javacpp-presets/pull/1475))
* Upgrade presets for OpenCV 4.10.0, FFmpeg 7.0.2, Spinnaker 4.0.0.116 ([pull #1524](https://github.com/bytedeco/javacpp-presets/pull/1524)), DNNL 3.5.3, OpenBLAS 0.3.28, CMINPACK 1.3.9, GSL 2.8, CPython 3.12.5, NumPy 2.0.1, SciPy 1.14.0, LLVM 18.1.8, LibRaw 0.21.2 ([pull #1520](https://github.com/bytedeco/javacpp-presets/pull/1520)), Tesseract 5.4.1, libffi 3.4.6, CUDA 12.6.0, cuDNN 9.3.0, NCCL 2.22.3, nvCOMP 4.0.0, OpenCL 3.0.16, NVIDIA Video Codec SDK 12.2.72, PyTorch 2.4.0 ([pull #1466](https://github.com/bytedeco/javacpp-presets/pull/1466)), SentencePiece 0.2.0, TensorFlow Lite 2.17.0, TensorRT 10.3.0.26, Triton Inference Server 2.48.0, ONNX 1.16.2, ONNX Runtime 1.18.1, TVM 0.17.0, and their dependencies
* Upgrade presets for OpenCV 4.10.0, FFmpeg 7.0.2, Spinnaker 4.0.0.116 ([pull #1524](https://github.com/bytedeco/javacpp-presets/pull/1524)), DNNL 3.5.3, OpenBLAS 0.3.28, CMINPACK 1.3.9, GSL 2.8, CPython 3.12.7, NumPy 2.1.2, SciPy 1.14.1, LLVM 18.1.8, LibRaw 0.21.2 ([pull #1520](https://github.com/bytedeco/javacpp-presets/pull/1520)), Tesseract 5.4.1, libffi 3.4.6, CUDA 12.6.0, cuDNN 9.3.0, NCCL 2.22.3, nvCOMP 4.0.0, OpenCL 3.0.16, NVIDIA Video Codec SDK 12.2.72, PyTorch 2.4.0 ([pull #1466](https://github.com/bytedeco/javacpp-presets/pull/1466)), SentencePiece 0.2.0, TensorFlow Lite 2.17.0, TensorRT 10.3.0.26, Triton Inference Server 2.48.0, ONNX 1.17.0, ONNX Runtime 1.19.2, TVM 0.17.0, and their dependencies

### January 29, 2024 version 1.5.10
* Introduce `macosx-arm64` builds for PyTorch ([pull #1463](https://github.com/bytedeco/javacpp-presets/pull/1463))
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ Further, in the case of Android, the JavaCPP Presets also rely on:

Manual Installation
-------------------
Simply put all the desired JAR files (`opencv*.jar`, `ffmpeg*.jar`, etc.), in addition to `javacpp.jar`, somewhere in your class path. The JAR files available as pre-built artifacts are meant to be used with [JavaCPP](https://github.com/bytedeco/javacpp). The binaries for Linux are built with Ubuntu, so they should work on most distributions currently in use. The ones for Android were compiled for ARMv7 processors featuring an FPU, so they will not work on ancient devices such as the HTC Magic or some others with an ARMv6 CPU. Here are some more specific instructions for common cases:
Simply put all the desired JAR files (`opencv*.jar`, `ffmpeg*.jar`, etc.), in addition to `javacpp.jar`, somewhere in your class path. The JAR files available as pre-built artifacts are meant to be used with [JavaCPP](https://github.com/bytedeco/javacpp). The binaries for Linux are built with Ubuntu, so they should work on most distributions currently in use. Here are some more specific instructions for common cases:

NetBeans (Java SE 7 or newer):

Expand Down Expand Up @@ -205,7 +205,7 @@ Each child module in turn relies by default on the included [`cppbuild.sh` scrip
* FFTW 3.3.10 http://www.fftw.org/download.html
* GSL 2.8 http://www.gnu.org/software/gsl/#downloading
* CPython 3.12.x https://www.python.org/downloads/
* NumPy 2.0.x https://github.com/numpy/numpy
* NumPy 2.1.x https://github.com/numpy/numpy
* SciPy 1.14.x https://github.com/scipy/scipy
* Gym 0.26.x https://github.com/openai/gym
* LLVM 18.1.x http://llvm.org/releases/download.html
Expand All @@ -231,9 +231,9 @@ Each child module in turn relies by default on the included [`cppbuild.sh` scrip
* Triton Inference Server 2.48.x https://developer.nvidia.com/nvidia-triton-inference-server
* The Arcade Learning Environment 0.8.x https://github.com/mgbellemare/Arcade-Learning-Environment
* DepthAI 2.24.x https://github.com/luxonis/depthai-core
* ONNX 1.16.x https://github.com/onnx/onnx
* ONNX 1.17.x https://github.com/onnx/onnx
* nGraph 0.26.0 https://github.com/NervanaSystems/ngraph
* ONNX Runtime 1.18.x https://github.com/microsoft/onnxruntime
* ONNX Runtime 1.19.x https://github.com/microsoft/onnxruntime
* TVM 0.17.x https://github.com/apache/tvm
* Bullet Physics SDK 3.25 https://pybullet.org
* LiquidFun http://google.github.io/liquidfun/
Expand Down
4 changes: 2 additions & 2 deletions cpython/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Introduction
------------
This directory contains the JavaCPP Presets module for:

* CPython 3.12.5 https://www.python.org/
* CPython 3.12.7 https://www.python.org/

Please refer to the parent README.md file for more detailed information about the JavaCPP Presets.

Expand Down Expand Up @@ -54,7 +54,7 @@ We can use [Maven 3](http://maven.apache.org/) to download and install automatic
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython-platform</artifactId>
<version>3.12.5-1.5.11-SNAPSHOT</version>
<version>3.12.7-1.5.11-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
Expand Down
4 changes: 2 additions & 2 deletions cpython/cppbuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ if [[ -z "$PLATFORM" ]]; then
exit
fi

OPENSSL=openssl-3.3.1
CPYTHON_VERSION=3.12.5
OPENSSL=openssl-3.3.2
CPYTHON_VERSION=3.12.7
download https://www.openssl.org/source/$OPENSSL.tar.gz $OPENSSL.tar.gz
download https://www.python.org/ftp/python/$CPYTHON_VERSION/Python-$CPYTHON_VERSION.tgz Python-$CPYTHON_VERSION.tgz

Expand Down
2 changes: 1 addition & 1 deletion cpython/platform/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<groupId>org.bytedeco</groupId>
<artifactId>cpython-platform</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
<name>JavaCPP Presets Platform for CPython</name>

<properties>
Expand Down
2 changes: 1 addition & 1 deletion cpython/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

<groupId>org.bytedeco</groupId>
<artifactId>cpython</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
<name>JavaCPP Presets for CPython</name>

<dependencies>
Expand Down
2 changes: 1 addition & 1 deletion cpython/samples/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython-platform</artifactId>
<version>3.12.5-1.5.11-SNAPSHOT</version>
<version>3.12.7-1.5.11-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
Expand Down
4 changes: 2 additions & 2 deletions cpython/src/gen/java/org/bytedeco/cpython/global/python.java
Original file line number Diff line number Diff line change
Expand Up @@ -144,12 +144,12 @@ There is also (independent) API version information in modsupport.h.
/*--start constants--*/
public static final int PY_MAJOR_VERSION = 3;
public static final int PY_MINOR_VERSION = 12;
public static final int PY_MICRO_VERSION = 5;
public static final int PY_MICRO_VERSION = 7;
public static final int PY_RELEASE_LEVEL = PY_RELEASE_LEVEL_FINAL;
public static final int PY_RELEASE_SERIAL = 0;

/* Version as a string */
public static final String PY_VERSION = "3.12.5";
public static final String PY_VERSION = "3.12.7";
/*--end constants--*/

/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
Expand Down
4 changes: 2 additions & 2 deletions numpy/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Introduction
------------
This directory contains the JavaCPP Presets module for:

* NumPy 2.0.1 http://www.numpy.org/
* NumPy 2.1.2 http://www.numpy.org/

Please refer to the parent README.md file for more detailed information about the JavaCPP Presets.

Expand Down Expand Up @@ -48,7 +48,7 @@ We can use [Maven 3](http://maven.apache.org/) to download and install automatic
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>numpy-platform</artifactId>
<version>2.0.1-1.5.11-SNAPSHOT</version>
<version>2.1.2-1.5.11-SNAPSHOT</version>
</dependency>

<!-- Additional dependencies to use bundled full version of MKL -->
Expand Down
2 changes: 1 addition & 1 deletion numpy/cppbuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ if [[ -z "$PLATFORM" ]]; then
exit
fi

NUMPY_VERSION=2.0.1
NUMPY_VERSION=2.1.2
download https://github.com/numpy/numpy/releases/download/v$NUMPY_VERSION/numpy-$NUMPY_VERSION.tar.gz numpy-$NUMPY_VERSION.tar.gz

mkdir -p $PLATFORM
Expand Down
4 changes: 2 additions & 2 deletions numpy/platform/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<groupId>org.bytedeco</groupId>
<artifactId>numpy-platform</artifactId>
<version>2.0.1-${project.parent.version}</version>
<version>2.1.2-${project.parent.version}</version>
<name>JavaCPP Presets Platform for NumPy</name>

<properties>
Expand All @@ -28,7 +28,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython-platform</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
Expand Down
10 changes: 5 additions & 5 deletions numpy/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

<groupId>org.bytedeco</groupId>
<artifactId>numpy</artifactId>
<version>2.0.1-${project.parent.version}</version>
<version>2.1.2-${project.parent.version}</version>
<name>JavaCPP Presets for NumPy</name>

<dependencies>
Expand All @@ -23,7 +23,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
Expand Down Expand Up @@ -51,7 +51,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
Expand All @@ -62,7 +62,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
<classifier>${javacpp.platform}</classifier>
</dependency>
</dependencies>
Expand Down Expand Up @@ -171,7 +171,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>cpython</artifactId>
<version>3.12.5-${project.parent.version}</version>
<version>3.12.7-${project.parent.version}</version>
<classifier>${os.name}-${os.arch}</classifier>
</dependency>
</dependencies>
Expand Down
2 changes: 1 addition & 1 deletion numpy/samples/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>numpy-platform</artifactId>
<version>2.0.1-1.5.11-SNAPSHOT</version>
<version>2.1.2-1.5.11-SNAPSHOT</version>
</dependency>

<!-- Additional dependencies to use bundled full version of MKL -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public class PyArrayMultiIterObject extends Pointer {
@MemberGetter public native @Cast("PyArrayIterObject**") PointerPointer iters();
// #elif defined(__cplusplus)
/*
* C++ doesn't stricly support flexible members and gives compilers
* C++ doesn't strictly support flexible members and gives compilers
* warnings (pedantic only), so we lie. We can't make it 64 because
* then Cython is unhappy (larger struct at runtime is OK smaller not).
*/
Expand Down
7 changes: 6 additions & 1 deletion numpy/src/gen/java/org/bytedeco/numpy/PyUFuncObject.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
import static org.bytedeco.numpy.global.numpy.*;



@Properties(inherit = org.bytedeco.numpy.presets.numpy.class)
public class PyUFuncObject extends Pointer {
static { Loader.load(); }
Expand Down Expand Up @@ -160,4 +159,10 @@ public class PyUFuncObject extends Pointer {
/* A PyListObject of `(tuple of DTypes, ArrayMethod/Promoter)` */
public native PyObject _loops(); public native PyUFuncObject _loops(PyObject setter);
// #endif
// #if NPY_FEATURE_VERSION >= NPY_2_1_API_VERSION
/*
* Optional function to process core dimensions of a gufunc.
*/
public native PyUFunc_ProcessCoreDimsFunc process_core_dims_func(); public native PyUFuncObject process_core_dims_func(PyUFunc_ProcessCoreDimsFunc setter);
// #endif
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
// Targeted by JavaCPP version 1.5.11-SNAPSHOT: DO NOT EDIT THIS FILE

package org.bytedeco.numpy;

import java.nio.*;
import org.bytedeco.javacpp.*;
import org.bytedeco.javacpp.annotation.*;

import static org.bytedeco.javacpp.presets.javacpp.*;
import static org.bytedeco.openblas.global.openblas_nolapack.*;
import static org.bytedeco.openblas.global.openblas.*;
import org.bytedeco.cpython.*;
import static org.bytedeco.cpython.global.python.*;

import static org.bytedeco.numpy.global.numpy.*;


/*
* This is the signature for the functions that may be assigned to the
* `process_core_dims_func` field of the PyUFuncObject structure.
* Implementation of this function is optional. This function is only used
* by generalized ufuncs (i.e. those with the field `core_enabled` set to 1).
* The function is called by the ufunc during the processing of the arguments
* of a call of the ufunc. The function can check the core dimensions of the
* input and output arrays and return -1 with an exception set if any
* requirements are not satisfied. If the caller of the ufunc didn't provide
* output arrays, the core dimensions associated with the output arrays (i.e.
* those that are not also used in input arrays) will have the value -1 in
* `core_dim_sizes`. This function can replace any output core dimensions
* that are -1 with a value that is appropriate for the ufunc.
*
* Parameter Description
* --------------- ------------------------------------------------------
* ufunc The ufunc object
* core_dim_sizes An array with length `ufunc->core_num_dim_ix`.
* The core dimensions of the arrays passed to the ufunc
* will have been set. If the caller of the ufunc didn't
* provide the output array(s), the output-only core
* dimensions will have the value -1.
*
* The function must not change any element in `core_dim_sizes` that is
* not -1 on input. Doing so will result in incorrect output from the
* ufunc, and could result in a crash of the Python interpreter.
*
* The function must return 0 on success, -1 on failure (with an exception
* set).
*/
@Properties(inherit = org.bytedeco.numpy.presets.numpy.class)
public class PyUFunc_ProcessCoreDimsFunc extends FunctionPointer {
static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public PyUFunc_ProcessCoreDimsFunc(Pointer p) { super(p); }
protected PyUFunc_ProcessCoreDimsFunc() { allocate(); }
private native void allocate();
public native int call(
PyUFuncObject ufunc,
@Cast("npy_intp*") SizeTPointer core_dim_sizes);
}
Loading

0 comments on commit 1b963b2

Please sign in to comment.