A PyCuda Covariance Matrix Parallel Implementation
Project description
PyCUDACov - A PyCuda Covariance Matrix Parallel Implementation
Usage and Installation
Requires CUDA enviroment.
Installation:
$ pip install pycudacov
Basic Usage
from sklearn.datasets import make_blobs
from sklearn.preprocessing import StandardScaler
from pandas import DataFrame
import numpy as np
from pycudacov import get_cov
# Generate test dataset
rows, cols = 2048, 2048 # samples, features
X, y = make_blobs(n_samples = rows, centers = 2, n_features = cols)
X_std = StandardScaler().fit_transform(X) # Optional
df = DataFrame(X_std)
df = df.astype(np.float32)
blocks = 512 # Size of kernel blocks
threads = 256 # Size of threads per block
# Call to PyCUDA Kernel, return the cov. matrix and
# GPU execution time in milliseconds
covariance_matrix, gpu_exec_time = get_cov(df.values, blocks, threads)
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pycudacov-0.1.2.tar.gz
(3.4 kB
view hashes)
Built Distribution
Close
Hashes for pycudacov-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f3e268560a7657e5b7f877ff01efbe1d6cb207e8a4c2355076b427c80c5415c7 |
|
MD5 | fcfe26def4134d1631f8479515f2a606 |
|
BLAKE2b-256 | cb6593d892207f1c22fe48c877481efce0d3b01f8e6a18fee7b9657270bd7005 |