PCAonGPU


NamePCAonGPU JSON
Version 0.1 PyPI version JSON
download
home_pagehttps://github.com/dnhkng/PCAonGPU
SummaryA GPU-based Incremental PCA implementation.
upload_time2023-10-30 18:47:36
maintainer
docs_urlNone
authorYour Name
requires_python>=3.10
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # PCAonGPU

A powerful implementation of Incremental Principal Components Analysis that runs on GPU, built on top of PyTorch.

## Installation

1. Clone the repository:

`git clone https://github.com/YourUsername/PCAonGPU.git`

2. Navigate to the cloned directory:

`cd PCAonGPU`

3. Install the required dependencies:

`pip install -r requirements.txt`

## Usage

```python
from gpu_pca import PCAonGPU

# Create an instance
model = PCAonGPU(n_components=5)

# Fit the model (either using `fit` or `partial_fit`)
model.fit(your_data)

# Transform the data
transformed_data = model.transform(your_data)
```

## Benchmark

SKlearn on an AMD Ryzen 9 5900X 12-Core Processor
 vs PCAonGPU on an Nvidia 4090

Data size: 5000 samples of 5000 dimensional data:
```
> python tests/benchmark_gpu_pca.py 
test_sklearn_pca took 21.78324556350708 seconds to complete its execution.
test_gpu_pca took 6.523377895355225 seconds to complete its execution.
```

Data size: 50000 samples of 5000 dimensional data.
```
> python tests/benchmark_gpu_pca.py 
test_sklearn_pca took 65.70944833755493 seconds to complete its execution.
test_gpu_pca took 11.030456304550171 seconds to complete its execution.
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/dnhkng/PCAonGPU",
    "name": "PCAonGPU",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "",
    "author": "Your Name",
    "author_email": "dnhkng@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/37/5e/09791ddd025cc68d2d07632bc4fc1f7e5cfccb0c8552b0f05d8621269a2d/PCAonGPU-0.1.tar.gz",
    "platform": null,
    "description": "# PCAonGPU\n\nA powerful implementation of Incremental Principal Components Analysis that runs on GPU, built on top of PyTorch.\n\n## Installation\n\n1. Clone the repository:\n\n`git clone https://github.com/YourUsername/PCAonGPU.git`\n\n2. Navigate to the cloned directory:\n\n`cd PCAonGPU`\n\n3. Install the required dependencies:\n\n`pip install -r requirements.txt`\n\n## Usage\n\n```python\nfrom gpu_pca import PCAonGPU\n\n# Create an instance\nmodel = PCAonGPU(n_components=5)\n\n# Fit the model (either using `fit` or `partial_fit`)\nmodel.fit(your_data)\n\n# Transform the data\ntransformed_data = model.transform(your_data)\n```\n\n## Benchmark\n\nSKlearn on an AMD Ryzen 9 5900X 12-Core Processor\n vs PCAonGPU on an Nvidia 4090\n\nData size: 5000 samples of 5000 dimensional data:\n```\n> python tests/benchmark_gpu_pca.py \ntest_sklearn_pca took 21.78324556350708 seconds to complete its execution.\ntest_gpu_pca took 6.523377895355225 seconds to complete its execution.\n```\n\nData size: 50000 samples of 5000 dimensional data.\n```\n> python tests/benchmark_gpu_pca.py \ntest_sklearn_pca took 65.70944833755493 seconds to complete its execution.\ntest_gpu_pca took 11.030456304550171 seconds to complete its execution.\n```\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A GPU-based Incremental PCA implementation.",
    "version": "0.1",
    "project_urls": {
        "Homepage": "https://github.com/dnhkng/PCAonGPU"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1b6a6c0dd0cdc2397826e45c4a688e0e8bfc0d9b6664fe1967e95358600c6c7a",
                "md5": "4fb46ec2d6dcfbce88118eca838764de",
                "sha256": "6bee61848100b23fb5a40d6c6b00b238c875fefd16062884e3b07df1f678aef9"
            },
            "downloads": -1,
            "filename": "PCAonGPU-0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4fb46ec2d6dcfbce88118eca838764de",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 7099,
            "upload_time": "2023-10-30T18:47:35",
            "upload_time_iso_8601": "2023-10-30T18:47:35.325430Z",
            "url": "https://files.pythonhosted.org/packages/1b/6a/6c0dd0cdc2397826e45c4a688e0e8bfc0d9b6664fe1967e95358600c6c7a/PCAonGPU-0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "375e09791ddd025cc68d2d07632bc4fc1f7e5cfccb0c8552b0f05d8621269a2d",
                "md5": "d68eb5a71cc6cb22acff35857157ada2",
                "sha256": "ce2e498d4d57cec5ef744283fa2d36e5d8a6aea2a0391d5cd247ca6666b0d4d9"
            },
            "downloads": -1,
            "filename": "PCAonGPU-0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "d68eb5a71cc6cb22acff35857157ada2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 6269,
            "upload_time": "2023-10-30T18:47:36",
            "upload_time_iso_8601": "2023-10-30T18:47:36.523535Z",
            "url": "https://files.pythonhosted.org/packages/37/5e/09791ddd025cc68d2d07632bc4fc1f7e5cfccb0c8552b0f05d8621269a2d/PCAonGPU-0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-30 18:47:36",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "dnhkng",
    "github_project": "PCAonGPU",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pcaongpu"
}
        
Elapsed time: 0.15423s