Skip to main content

IVA TPU Python API

Project description

IVA TPU Python API

Main entities

TPUDevice

TPUDevice is a device handle

TPUProgram

TPUProgram contains TPU instructions and weigths data

Example

import numpy as np
from iva_tpu import TPUDevice, TPUProgram

from iva_applications.resnet50 import image_to_tensor
from iva_applications.imagenet import tpu_tensor_to_classes
from PIL import Image

image = Image.open('ILSVRC2012_val_00000045.JPEG')
tensor = image_to_tensor(image)

device = TPUDevice()
program = TPUProgram("resnet50.tpu")
device.load(program)  # now device is ready to make inference

output = device.run([tensor], dtype=np.float32)
tpu_tensor_to_classes(output[0], top=1)

from timeit import timeit
timeit(lambda: device.run([tensor]), number=100)

TPU Raw buffer examples

from iva_tpu import TPUDevice, TPUProgram
program = TPUProgram("omega_program_dnn_quant_3.0.0.tpu")
device = TPUDevice()
device.load(program)

with open("f.bin", "rb") as f:
    buf=f.read()

device.set_input_buffer(buf, 0)
device.run_inference()

for i in range(3):
  o = device.get_output_buffer(i)
  with open(f"o{i}.bin", "wb") as f:
    f.write(o)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iva-tpu-10.6.0.tar.gz (127.6 kB view details)

Uploaded Source

File details

Details for the file iva-tpu-10.6.0.tar.gz.

File metadata

  • Download URL: iva-tpu-10.6.0.tar.gz
  • Upload date:
  • Size: 127.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.8

File hashes

Hashes for iva-tpu-10.6.0.tar.gz
Algorithm Hash digest
SHA256 672e2cf243b70fec98fbeb8513d4a65e42b8103e35ee6df0cf8e1dbc0c604b7c
MD5 1181263b579e22ba8609abdd230b5ae9
BLAKE2b-256 55667abd6e327a18af6ff5dcc9ba3f6f55d196580f651edde6961d3d1aadbff9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page