loopy

Firedrake project mirror of loopy from https://github.com/inducer/loopy

https://github.com/firedrakeproject/loopy

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 1 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.6%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Firedrake project mirror of loopy from https://github.com/inducer/loopy

Basic Info
  • Host: GitHub
  • Owner: firedrakeproject
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 7.9 MB
Statistics
  • Stars: 1
  • Watchers: 32
  • Forks: 4
  • Open Issues: 0
  • Releases: 0
Created over 7 years ago · Last pushed 11 months ago
Metadata Files
Readme License Citation

README.rst

Loopy: Transformation-Based Generation of High-Performance CPU/GPU Code
=======================================================================

.. image:: https://gitlab.tiker.net/inducer/loopy/badges/main/pipeline.svg
    :alt: Gitlab Build Status
    :target: https://gitlab.tiker.net/inducer/loopy/commits/main
.. image:: https://github.com/inducer/loopy/actions/workflows/ci.yml/badge.svg
    :alt: Github Build Status
    :target: https://github.com/inducer/loopy/actions/workflows/ci.yml
.. image:: https://badge.fury.io/py/loopy.svg
    :alt: Python Package Index Release Page
    :target: https://pypi.org/project/loopy/
.. image:: https://zenodo.org/badge/20281732.svg
    :alt: Zenodo DOI for latest release
    :target: https://zenodo.org/doi/10.5281/zenodo.10672274

Loopy lets you easily generate the tedious, complicated code that is necessary
to get good performance out of GPUs and multi-core CPUs.
Loopy's core idea is that a computation should be described simply and then
*transformed* into a version that gets high performance. This transformation
takes place under user control, from within Python.

It can capture the following types of optimizations:

* Vector and multi-core parallelism in the OpenCL/CUDA model
* Data layout transformations (structure of arrays to array of structures)
* Loop unrolling
* Loop tiling with efficient handling of boundary cases
* Prefetching/copy optimizations
* Instruction level parallelism
* and many more!

Loopy targets array-type computations, such as the following:

* dense linear algebra,
* convolutions,
* n-body interactions,
* PDE solvers, such as finite element, finite difference, and
  Fast-Multipole-type computations.

It is not (and does not want to be) a general-purpose programming language.

Loopy is licensed under the liberal `MIT license
`__ and free for commercial, academic,
and private use. All of Loopy's dependencies can be automatically installed from
the package index after using::

    pip install loopy

In addition, Loopy is compatible with and enhances
`pyopencl `__.

---

Places on the web related to Loopy:

* `Python Package Index `__ (download releases)
* `Documentation `__ (read how things work)
* `Github `__ (get latest source code, file bugs)
* `Homepage `__
* `Benchmarks `__

Owner

  • Name: Firedrake
  • Login: firedrakeproject
  • Kind: organization
  • Email: firedrake@imperial.ac.uk

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:

# major contributors

- family-names: "Kloeckner"
  given-names: "Andreas"
  orcid: "https://orcid.org/0000-0003-1228-519X"
- family-names: Kulkarni
  given-names: Kaushik
  email:  kaushikcfd@gmail.com
- family-names: Kempf
  given-names: Dominic
  email: dominic.r.kempf@gmail.com
- family-names: Wala
  given-names: Matt
  email: wala1@illinois.edu
- family-names: Curtis
  given-names: Nick
  email: arghdos@gmail.com
- family-names: Stevens
  given-names: James
  email: jdsteve2@illinois.edu
- family-names: Fernando
  given-names: Isuru
  email: isuruf@gmail.com

# smaller fixes

- family-names: Mitchell
  given-names: Lawrence
  email: lawrence@wence.uk
- family-names: Alvey-Blanco
  given-names: Addison J.
  email: aalveyblanco@gmail.com
- family-names: Fikl
  given-names: Alexandru
  email: alexfikl@gmail.com
- family-names: Malone
  given-names: Chris
  email: chris.m.malone@gmail.com
- family-names: Ward
  given-names: Connor
  email: c.ward20@imperial.ac.uk
- family-names: Wilcox
  given-names: Lucas C.
  email: lucas@swirlee.com
- family-names: Koch
  given-names: Marcel
  email: marcel.koch@uni-muenster.de
- family-names: Woodman
  given-names: Marmaduke
  email: marmaduke.woodman@univ-amu.fr
- family-names: Smith
  given-names: Matthew
  email: mjsmith6@illinois.edu
- family-names: Diener
  given-names: Matthias
  email: mdiener@illinois.edu
- family-names: Christensen
  given-names: Nicholas
  email: njchris2@illinois.edu
- family-names: Nykto
  given-names: Nicolas
  email: nnytko2@illinois.edu
- family-names: Kirby
  given-names: Robert C.
  email: Robert_Kirby@baylor.edu
- family-names: Hegmann
  given-names: Sebastian
  email: shegmann@nina.iwr.uni-heidelberg.de
- family-names: Vorderwuelbecke
  given-names: Sophia
  email: sv2518@ic.ac.uk
- family-names: Ratnayaka
  given-names: Thilina
  email: thilinarmtb@gmail.com
- family-names: Gibson
  given-names: Thomas
  email: gibsonthomas1120@hotmail.com
- family-names: Sun
  given-names: Tianjiao
  email: tj-sun@tianjiaos-air.home
- family-names: Smith
  given-names: Timothy A.
  email: tasmith4@illinois.edu
- family-names: Warburton
  given-names: Tim
  email: timwar@caam.rice.edu
- family-names: Wei
  given-names: Xiaoyu
  email: wxy0516@gmail.com
- family-names: Weiner
  given-names: Zach
  email: zachjweiner@gmail.com

title: "Loopy"
version: 2024.1
date-released: 2024-02-16
url: "https://github.com/inducer/loopy"
doi: 10.5281/zenodo.10672275
license: MIT

GitHub Events

Total
  • Release event: 9
  • Delete event: 9
  • Issue comment event: 11
  • Push event: 12
  • Pull request event: 9
  • Create event: 29
Last Year
  • Release event: 9
  • Delete event: 9
  • Issue comment event: 11
  • Push event: 12
  • Pull request event: 9
  • Create event: 29

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 0
  • Total pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: about 3 hours
  • Total issue authors: 0
  • Total pull request authors: 2
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 0
  • Pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: about 3 hours
  • Issue authors: 0
  • Pull request authors: 2
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • connorjward (1)
Pull Request Authors
  • connorjward (5)
  • benSepanski (2)
  • dham (2)
  • ksagiyam (1)
  • dependabot[bot] (1)
  • JHopeCollins (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (1) github_actions (1)