Home / Function/ nativeNewTensor() — pytorch Function Reference

nativeNewTensor() — pytorch Function Reference

Architecture documentation for the nativeNewTensor() function in Tensor.java from the pytorch codebase.

Entity Profile

Dependency Diagram

graph TD
  d50225be_5454_b26a_269e_76ae3e7e49e5["nativeNewTensor()"]
  e3be0d59_52d8_641b_e35d_ee2cbba07acb["Tensor_float32()"]
  d50225be_5454_b26a_269e_76ae3e7e49e5 -->|calls| e3be0d59_52d8_641b_e35d_ee2cbba07acb
  9c691d81_3362_7987_ad8c_0eb7390a1a66["Tensor_int32()"]
  d50225be_5454_b26a_269e_76ae3e7e49e5 -->|calls| 9c691d81_3362_7987_ad8c_0eb7390a1a66
  b5a77134_7dbf_923c_dbac_d60eefce3ea4["Tensor_int64()"]
  d50225be_5454_b26a_269e_76ae3e7e49e5 -->|calls| b5a77134_7dbf_923c_dbac_d60eefce3ea4
  87f5b5fe_1b3e_aeb8_ac15_1dcce674ceac["Tensor_float64()"]
  d50225be_5454_b26a_269e_76ae3e7e49e5 -->|calls| 87f5b5fe_1b3e_aeb8_ac15_1dcce674ceac
  ec976618_9c94_29c2_594c_2f6c3bfc32a4["Tensor_uint8()"]
  d50225be_5454_b26a_269e_76ae3e7e49e5 -->|calls| ec976618_9c94_29c2_594c_2f6c3bfc32a4
  5300f9d2_3df7_77a1_96d7_64b07d21fe7e["Tensor_int8()"]
  d50225be_5454_b26a_269e_76ae3e7e49e5 -->|calls| 5300f9d2_3df7_77a1_96d7_64b07d21fe7e
  style d50225be_5454_b26a_269e_76ae3e7e49e5 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

android/pytorch_android/src/main/java/org/pytorch/Tensor.java lines 705–734

  @DoNotStrip
  private static Tensor nativeNewTensor(
      ByteBuffer data, long[] shape, int dtype, int memoryFormatCode, HybridData hybridData) {
    Tensor tensor = null;

    MemoryFormat memoryFormat = MemoryFormat.CONTIGUOUS;
    if (MemoryFormat.CHANNELS_LAST.jniCode == memoryFormatCode) {
      memoryFormat = MemoryFormat.CHANNELS_LAST;
    } else if (MemoryFormat.CHANNELS_LAST_3D.jniCode == memoryFormatCode) {
      memoryFormat = MemoryFormat.CHANNELS_LAST_3D;
    }

    if (DType.FLOAT32.jniCode == dtype) {
      tensor = new Tensor_float32(data.asFloatBuffer(), shape, memoryFormat);
    } else if (DType.INT32.jniCode == dtype) {
      tensor = new Tensor_int32(data.asIntBuffer(), shape, memoryFormat);
    } else if (DType.INT64.jniCode == dtype) {
      tensor = new Tensor_int64(data.asLongBuffer(), shape, memoryFormat);
    } else if (DType.FLOAT64.jniCode == dtype) {
      tensor = new Tensor_float64(data.asDoubleBuffer(), shape, memoryFormat);
    } else if (DType.UINT8.jniCode == dtype) {
      tensor = new Tensor_uint8(data, shape, memoryFormat);
    } else if (DType.INT8.jniCode == dtype) {
      tensor = new Tensor_int8(data, shape, memoryFormat);
    } else {
      new IllegalArgumentException("Unknown Tensor dtype");
    }
    tensor.mHybridData = hybridData;
    return tensor;
  }

Subdomains

Frequently Asked Questions

What does nativeNewTensor() do?
nativeNewTensor() is a function in the pytorch codebase.
What does nativeNewTensor() call?
nativeNewTensor() calls 6 function(s): Tensor_float32, Tensor_float64, Tensor_int32, Tensor_int64, Tensor_int8, Tensor_uint8.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free