Skip to main content

API for interacting with the Computer Systems Genome database.

Project description

Computer Systems Genome API

About

The Mission of the Computer Systems Genome Project (CSGenome) is to conduct the first scientific effort to catalog the lineage of computer system performance over time to enable knowledge discovery and further understanding of the impact of computing innovations on transformative technologies, the knowledge-based economy, and societal change.
This is an API to access our database and request computer system information, ranging from RAM, to processors, and even GPUs.
Learn more at our website: https://csgenome.org/

Table of Contents

Getting Started and Tutorial

Install through pip install csgapi

Retrieve the client through the import

from csgapi import client

Connect the client with

cli = client.CSGenome()

If you have an auth token that allows you more access:

cli = client.CSGenome(auth_token='test123')

Accessing a specific table in our database

cli.processors

Getting an entry in a table given UID

cli.processors.get(1000)

Retrieving only specific columns of an entry

cli.processors.get(uid=1, params={'columns': 'model,uid'})

Getting a list of entries and only specific columns

cli.processors.list(columns=['model', 'uid'])

Request entries that satisfy a filter

Get all processors with clock_speed of 2100
cli.processors.list(clock_speed=2100)

Get all processors within 2100 to 2500 value for clock_speed
cli.processors.list(clock_speed=[ge(2100), lt(2500)])

Get all processors wih clock_speed greater than 2100
cli.processors.list(clock_speed=gt(2100))

ge() is used to signify greater than or equal to
gt() is used to signify greater than
le() is used to signify less than or equal to
lt() is used to signify less than

These functions can be imported from csgapi.base

Higher authentication capabilities (Post, Put, Delete)

Create entry
processor_data = {'vdd_high': test}
res1 = cli.processor.create(data=processor_data)

Update a entry by UID
updated_data = {'accepted_memory': 'spec2017_test_put'}
res = cli.spec2017.update(50, updated_data)

Modify a specific entry
res = cli.spec2017.get(50)
res.accepted_memory = "test_smart_update"
res.save()

Delete an entry by UID
cli.processors.delete(50)

Examples

Using the data in our database, you can create meaningful visualizations such as these. Visualization made using data from csgapi Visualization made using data from csgapi 2

Contributing

If you would like to submit a request for a change, email us at csgenomevtteam@gmail.com

Credits

The CSGenome Project is led by Professors Kirk W. Cameron (PI), Godmar Back (co-PI and Technical Advisor), and Margaret Ellis (co-PI and Team Leader) and an extremely talented and highly diverse group of more than a dozen Virginia Tech undergraduate and graduate students.

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

csgapi-0.1.4.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

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

csgapi-0.1.4-py3-none-any.whl (107.1 kB view details)

Uploaded Python 3

File details

Details for the file csgapi-0.1.4.tar.gz.

File metadata

  • Download URL: csgapi-0.1.4.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for csgapi-0.1.4.tar.gz
Algorithm Hash digest
SHA256 3a3e360039b1f826e6032ff9dfa5a286a17f4049a33b3754d8af4127f046129c
MD5 918429927fd51a3dec0b9ac21f76101f
BLAKE2b-256 c1c6f1b749e19d72fcd4c8239b35df5bde4c8ae9cb410b512877171c8ea5bcdb

See more details on using hashes here.

File details

Details for the file csgapi-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: csgapi-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 107.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for csgapi-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0ca2b3be7d1f5a5447d094ef2ebdac2f07e77569b1cebafbcc19d25d6e88448d
MD5 ea8704b558ee0d899c881b8bdc1a9855
BLAKE2b-256 a923e68e86e9d4865edf3dfd1bd6c0646117d53a7d7f1ab21352b6acb48224a0

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