gpu-lang-compat

GPU Vendor/Programming Model Compatibility Table

https://github.com/andih/gpu-lang-compat

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.2%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

GPU Vendor/Programming Model Compatibility Table

Basic Info
  • Host: GitHub
  • Owner: AndiH
  • License: mit
  • Language: HTML
  • Default Branch: main
  • Homepage:
  • Size: 2.49 MB
Statistics
  • Stars: 26
  • Watchers: 3
  • Forks: 2
  • Open Issues: 4
  • Releases: 3
Created over 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

GPU Vendor/Programming Model Compatibility Overview

There are three vendors of HPC-grade GPUs (NVIDIA, AMD, Intel), and many different programming models to use the devices for general computing. It's a zoo! This repository collects data about the state of support of the various combinations, for C/C++ and Fortran.

The initial collection was done for a presentation (v1.0), continued to a blog post (v1.2), and further extended to a proper paper (v2.0).
The current version in HTML for can be found at x-dev.pages.jsc.fz-juelich.de/models/.

I'm happy to accept contributions for extension/correction. Please add issues or file a pull request (note the MIT license).

Structure

The core of the work is the compat.yml file, the YAML-structured raw data. By scripts and templates, this data is converted to HTML or PDF (via LaTeX; an SVG version is created from the PDF as well).

Files:

  • render_table.py: Read in definitions from compat.yml, massage data, and generate HTML and/or LaTeX code. Can be either printed to screen and/or written to file. See render_table.py -h
  • compat.yml: All the raw data, in YAML. Starts with SVG code for status icons. Then come the status assessments in form of dictionaries. And finally, a list of descriptions of the assessments.
  • templates/: Folder for all templates to be consumed by the Python script, containing Jinja2 template files generating the respective code from the raw data. While a lot of the content is similar, there are some distinct differences – like how the footnotes are handled, because LaTeX is typeset while HTML is static.
  • output-fragments/: Folder for generated files from the templates, plus skeletons containing boilerplate code to augment the generated files. For HTML, this is not much beyond the CSS; but for LaTeX this also includes some important definitions; but I did not want to cascade it any further.
  • Makefile: Generate all of these. Check out make html pdf svg.

Also, _gen-symbols/ exist, which is part of my exploration for all of this. I just might need it if I change the icons.

SC23 P3HPC Paper

The template table-template--descriptions.in.paper.tex is a heavily modified version of the standard TeX template extended to -- amongst others -- support references (from references.bib). render_table.py can also generate references in HTML output, but the implementation is very fragile; lets hope it doesn't break🤞.

A preprint of the paper can be found at arxiv.org/abs/2309.05445.

SVG Snapshot

Owner

  • Name: Andreas Herten
  • Login: AndiH
  • Kind: user
  • Location: Langerwehe, Germany
  • Company: Jülich Supercomputing Centre

HPC, GPU Computing, Python, LaTeX, and, well…, take a look around…

Citation (CITATION.cff)

cff-version: 1.2.0
title: GPU Vendor/Programming Model Compatibility Overview
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Andreas
    family-names: Herten
    email: a.herten@fz-juelich.de
    affiliation: Jülich Supercomputing Centre
    orcid: 'https://orcid.org/0000-0002-7150-2505'
identifiers:
  - type: doi
    value: 10.34732/xdvblg-r1bvif
    description: Blogpost of Table
  - type: doi
    value: 10.1145/3624062.3624178
    description: SC23 Workshop Paper of extended version (v2) of material with discussions
repository-code: 'https://github.com/AndiH/gpu-lang-compat'
abstract: >-
  There are three vendors of HPC-grade GPUs (NVIDIA, AMD,
  Intel), and many different programming models to use the
  devices for general computing. It's a zoo! The overview
  presents the status of the possible combinations of some
  more established programming models, given comments and
  details for every combination. The repository contains the
  YAML raw data and scripts and templates to generate tables
  (HTML, PDF via LaTeX (also SVG from PDF)).
keywords:
  - Intel
  - AMD
  - NVIDIA
  - GPGPU
  - GPU
  - GPU Programming
  - CUDA
  - HIP
  - SYCL
license: MIT
version: '2.0'
date-released: '2023-11-13'

GitHub Events

Total
  • Issues event: 5
  • Watch event: 4
  • Issue comment event: 8
  • Push event: 5
  • Pull request event: 1
  • Create event: 1
Last Year
  • Issues event: 5
  • Watch event: 4
  • Issue comment event: 8
  • Push event: 5
  • Pull request event: 1
  • Create event: 1

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 10
  • Total pull requests: 2
  • Average time to close issues: 7 months
  • Average time to close pull requests: 8 months
  • Total issue authors: 3
  • Total pull request authors: 1
  • Average comments per issue: 0.5
  • Average comments per pull request: 5.5
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: 2 months
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 3.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • AndiH (8)
  • hattom (1)
  • sumseq (1)
Pull Request Authors
  • vchuravy (2)
Top Labels
Issue Labels
new-implementation (4) monitoring (3) correction (1)
Pull Request Labels