Skip to main content

Task-Level Parallelization for HLS

Feature Synopsis

  • software simulation (not cycle-accurate)
  • Xilinx HLS backend
  • HeteroCL frontend

Application Synopsis

App Properties Details # Streams # Tasks # Steps
bandwidth static bandwidth test using async_mmap 4 4 1
cannon static,feedback Cannon's algorithm 20 7 1
graph dynamic,feedback connected components 6 3 1
jacobi static 5-point stencil 23 17 1
vadd static naïve vector addition 3 4 1

Getting Started

Prerequisites

  • Ubuntu 16.04+

Install from Binary

./install.sh

Install from Source

Build Prerequisites

  • CMake 3.13+
  • A C++11 compiler
  • Google glog library
  • Clang headers

Build tlpcc

mkdir build
cd build
cmake ..
make
make test
cd ..
sudo ln -s backend/python/tlpc /usr/local/bin/
sudo ln -s build/backend/tlpcc /usr/local/bin/

Known Issues

  • Template functions cannot be tasks
  • Vivado HLS include paths (e.g., /opt/Xilinx/Vivado/2019.2/include) must not be specified in tlpc --cflags;
    • Workaround is to export CPATH=/opt/Xilinx/Vivado/2019.2/include

Download files

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

Source Distribution

tlpc-0.0.20200711.1.tar.gz (28.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

tlpc-0.0.20200711.1-py3.6.egg (70.0 kB view details)

Uploaded Egg

tlpc-0.0.20200711.1-py3-none-any.whl (33.4 kB view details)

Uploaded Python 3

File details

Details for the file tlpc-0.0.20200711.1.tar.gz.

File metadata

  • Download URL: tlpc-0.0.20200711.1.tar.gz
  • Upload date:
  • Size: 28.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for tlpc-0.0.20200711.1.tar.gz
Algorithm Hash digest
SHA256 f8b8e0a34d74e66255999cf5b5a55cbec22afe4809d73cdb52a32a94fab0901a
MD5 2a8ebb2a100d423cd85d5e041646e0c3
BLAKE2b-256 98f8717577c70182084aaadbe54b34c460d4c932b799fcf010205a5551a06051

See more details on using hashes here.

File details

Details for the file tlpc-0.0.20200711.1-py3.6.egg.

File metadata

  • Download URL: tlpc-0.0.20200711.1-py3.6.egg
  • Upload date:
  • Size: 70.0 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for tlpc-0.0.20200711.1-py3.6.egg
Algorithm Hash digest
SHA256 607e277e53c9825b4ec024e68e3325cf671311cd0a16d9ef6d08977c79c6c841
MD5 867dd3875803a90135ca58e836a6531d
BLAKE2b-256 7f1bcd0c16d7ec1834954c2f14e323eaceb3388a3d05a6a6d7844277f6741be6

See more details on using hashes here.

File details

Details for the file tlpc-0.0.20200711.1-py3-none-any.whl.

File metadata

  • Download URL: tlpc-0.0.20200711.1-py3-none-any.whl
  • Upload date:
  • Size: 33.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for tlpc-0.0.20200711.1-py3-none-any.whl
Algorithm Hash digest
SHA256 23ee0d0386dd6844fbdd2d0af43dceb38235a73993d04bb8132ac0395301af17
MD5 a91c3599355a9f209f91c1357c358347
BLAKE2b-256 37567a6f58342d2fd8d8cb78fa9f42ea81bd8d6117bd3abe26de315a45f6640e

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.20200716.1

3 files

This release

0.0.20200711.1 This release

3 files

0.0.20200612.1

3 files

0.0.20200517.1

3 files

0.0.20200513.1

3 files

0.0.20200423.1

3 files

0.0.20200221.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page