README.md 960 Bytes
Newer Older
1
2
3
4
5
6
# CK Python API
This API uses Python to generate instances of operations present in CK, compiles them into a shared library, and an executable to run the instances.
There are 2 directories: shared and normal. The normal directory contains one instance that will compile into an excutable to be run, while the shared directory 
generates multiple instances and compiles them into a shared library.

## Normal
7
8
To generate the cpp file and executable:  

Astha Rai's avatar
Astha Rai committed
9
10
`python3 gemm_ex.py`

11
12
Run the executable (same layout as CK examples: verification, initialization, run kernel # of times):  

Astha Rai's avatar
Astha Rai committed
13
`./ex 0 1 5`
14
15

## Shared
16
17
Generate all instances, make shared library and executable:  

Astha Rai's avatar
Astha Rai committed
18
19
`python3 driver.py`

20
21
Run the executable (same layout as CK examples):  

Astha Rai's avatar
Astha Rai committed
22
23
24
25
26
`./example 0 1 5`

* There's a main.cpp file needed for the executable included, so be careful when deleting the generated cpp files for the instances

The design for parts of this code was taken from Meta's AIT library
27