Commit graph

87 commits

Author SHA1 Message Date
Ole Schütt
9a20f053d1 Move prettify into precommit folder and inline fprettify submodule 2024-08-04 12:45:16 +02:00
dependabot[bot]
20da4d9425 Bump jinja2 from 3.1.3 to 3.1.4 in /tools/precommit
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-06 21:54:48 +02:00
dependabot[bot]
a98737dd6e Bump werkzeug from 3.0.1 to 3.0.3 in /tools/precommit
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.0.1 to 3.0.3.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.0.1...3.0.3)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-06 21:32:00 +02:00
Ole Schütt
4dbdcdf615 precommit: Upgrade to Ubuntu 24.04 2024-05-01 17:11:52 +02:00
Hans Pabst
25edd69807
DBM: OpenCL implementation (#3375)
* There are three main implementations
  1. DBM_MULTIPLY_SPLIT=1: default kernel with smallest LOC-number uses private/register-backed buffer. This implementation is simple and performs best even on different vendor's GPUs. There is moderate unrolling/code-bloat leveraging macros. Though, there is no "old school GPU" like copy-into SLM; if there is re-use, it leverage existing caches between registers and global memory.
  2. DBM_MULTIPLY_SPLIT=2..N with DBM_MULTIPLY_SPLIT=8 matching the CUDA implementation using shared/local memory. This implementation matches the existing CUDA implementation and perform equal and reasonable across GPUs. There is moderate unrolling/code-bloat leveraging macros; heuristics are revised/different from CUDA implementation (less cases).
  3. DBM_MULTIPLY_GEN=1: uses https://github.com/intel/tiny-tensor-compiler and IR describing DBM's input format. The IR-file (https://github.com/hfp/cp2k/blob/master/src/dbm/dbm_multiply_opencl.ir) is not part of PR. The generated kernel-code is not yet competitive.
* The amount of code in the OpenCL-kernel and and C based glue-code can be *significantly* reduced (fraction of LOC) when removing for instance implementation 2 and 3 (above mentioned). Reducing the number of LOC can be part of a future cleanup (and once code is settled).
* check_file_properties.py: support C-comments, and omit checking OpenCL source code (it is usually compiled at runtime, i.e., machine-driven rather than user-controlled).
2024-04-29 12:23:24 +02:00
dependabot[bot]
fc017266ad Bump gunicorn from 21.2.0 to 22.0.0 in /tools/precommit
Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 21.2.0 to 22.0.0.
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](https://github.com/benoitc/gunicorn/compare/21.2.0...22.0.0)

---
updated-dependencies:
- dependency-name: gunicorn
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-17 12:49:31 +02:00
Cristian Le
58e3e09bda
fedora: Optimize builds (#3268)
Signed-off-by: Cristian Le <cristian.le@mpsd.mpg.de>
2024-03-28 21:07:23 +01:00
dependabot[bot]
ffcbeb74c2 Bump black from 23.11.0 to 24.3.0 in /tools/precommit
Bumps [black](https://github.com/psf/black) from 23.11.0 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/23.11.0...24.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-20 20:46:49 +01:00
Hans Pabst
aa4adac34c
DBM: introduced OpenCL support (#3321) 2024-03-15 16:41:35 +01:00
Hans Pabst
4b070db377 Offload: support OpenCL
* This work "short-cuts" supporting OpenCL by leveraging DBCSR's OpenCL backend to implement CP2K's Offload interface.
  - Future work (may be soon) can decide/settle where the actual glue code is hosted making the "OpenCL backend".
  - OpenCL is very close to CUDA (streams/queues, events, etc), however, an OpenCL backend accounts for differences.
  - Pointer arithmetic on the host using device pointers is not supported with OpenCL without additional effort.
  - OpenCL abstracts device memory being "cl_mem" structure and does not expose actual device pointers.
* Some functions on CP2K's Offload interface (once derived from DBCSR's ACC interface) remain "TODO".
* For the time being offload_runtime.h "disables" support for Grid and PW/FFTs
  - Defines for __NO_OFFLOAD_GRID and __NO_OFFLOAD_PW must be still given for the Fortran code.
* Some changes remove CUDA and HIP specific code-paths by relying on Offload runtime (e.g., offload_create_buffer).
* Some changes also address problematic code format (multi-line control-flow w/o curly braces/block, etc).
* Further updating INSTALL.md and white-listing/removing certain items are part of follow-up changes.
* Cleaned FLAG_EXCEPTIONS (tools/precommit/check_file_properties.py).
2024-03-13 09:44:46 +01:00
Matthias Krack
f76adaefd7 Indent @-directives and set them upercase 2024-01-16 16:23:54 +01:00
dependabot[bot]
1f31a16965
precommit: Bump jinja2 from 3.1.2 to 3.1.3 2024-01-12 12:47:08 +01:00
Ole Schütt
fafc0043f0 precommit: Add input file formatter 2023-12-18 22:41:19 +01:00
Ole Schütt
0dfeee1108 Drop support for NDEBUG 2023-12-15 15:31:33 +01:00
Ole Schütt
71ab6edeee precommit: Fix Python 3.6 incompatibility 2023-11-24 15:37:50 +01:00
Ole Schütt
4bf43545bd Manula: Add precommit check for biblio refs 2023-11-21 18:05:00 +01:00
Ole Schütt
443130275c precommit: Wrap Markdown lines after 100 characters 2023-11-14 12:47:36 +01:00
Ole Schütt
090ed75924 precommit: Add mdformat-myst and upgrade package 2023-11-14 12:47:36 +01:00
Ole Schütt
e3caab925d precommit: Fix Dockerfile 2023-11-12 19:48:03 +01:00
Ole Schütt
ab8d59069b precommit: Use Python venv 2023-11-04 14:30:06 +01:00
Ole Schütt
f8667229bc Fix Python 3.12 warnings 2023-11-04 14:30:06 +01:00
dependabot[bot]
b1e573e536 Bump werkzeug from 2.3.3 to 3.0.1 in /tools/precommit
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.3.3 to 3.0.1.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.3.3...3.0.1)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-26 10:55:19 +02:00
Ole Schuett
7c90856a67 Add precommit check for spaces in multi-line strings 2023-10-02 21:47:59 +02:00
Taillefumier Mathieu
3b45327215
offload: Only set LimitMallocHeapSize for HIP_VERSION > 5.2 2023-07-24 12:33:04 +02:00
Ole Schütt
934a489bed Docs: Add Sphinx-based manual 2023-06-08 10:46:10 +02:00
Hans Pabst
03f49e929a LIBXSMM 2.0: ensure compatibility
* Link explicitly against static libraries.
* Dispatch kernel using v2-API.
2023-06-07 16:42:49 +02:00
Ole Schütt
12c03de0ba Reformat with black 23.3.0 2023-05-02 12:31:58 +02:00
Ole Schütt
6b21f62de6 precommit: Upgrade Python packages 2023-05-02 12:31:58 +02:00
Matthias Krack
40dbbd6d86 Allow tab characters also in arch files 2023-03-07 13:40:41 +01:00
dependabot[bot]
be1541ddfe Bump markdown-it-py from 2.1.0 to 2.2.0 in /tools/precommit
Bumps [markdown-it-py](https://github.com/executablebooks/markdown-it-py) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/executablebooks/markdown-it-py/releases)
- [Changelog](https://github.com/executablebooks/markdown-it-py/blob/master/CHANGELOG.md)
- [Commits](https://github.com/executablebooks/markdown-it-py/compare/v2.1.0...v2.2.0)

---
updated-dependencies:
- dependency-name: markdown-it-py
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-24 11:01:37 +01:00
dependabot[bot]
8eefebb0a2 Bump werkzeug from 2.2.2 to 2.2.3 in /tools/precommit
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.2.2 to 2.2.3.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.2.2...2.2.3)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-16 10:54:09 +01:00
Frederick Stein
6a8dd724d9 Refactor and simplify 2023-02-06 15:23:23 +01:00
Ole Schütt
64a6e2ead2 Update cp2k_info.F to 2023 2023-01-01 14:08:47 +01:00
Ole Schütt
ffbd2cdb7f precommit: Check copyright banner in LICENSE files 2023-01-01 13:01:39 +01:00
Ole Schütt
fcb0f647ee Add support for Torch which is needed by NequIP 2022-11-30 11:54:22 +01:00
Ole Schütt
0a7d28b76a precommit: Check copyright banner of cmake files 2022-11-06 16:15:27 +01:00
Ole Schütt
786bc82ff9 precommit: Switch from markdownlint to mdformat 2022-11-06 16:15:27 +01:00
Ole Schütt
f95d3a4a5d precommit: Migration Docker image to artifact registry 2022-11-06 16:15:27 +01:00
Ole Schütt
1f91672293 Stop using OpenMP in .cu files to accommodate HIP 2022-10-14 12:54:43 +02:00
Ole Schütt
83879e1e52 precommit: Add type annotations to precommit.py 2022-07-16 13:58:47 +02:00
Ole Schütt
8c9193c8b1 precommit: Ignore .log files 2022-07-16 13:58:47 +02:00
Ole Schütt
f1821e6c3c Remove version number from development branch 2022-07-08 11:33:48 +02:00
Ole Schütt
895ec07cf5 precommit: Upgrade to Ubuntu 22.04 2022-05-11 14:17:18 +02:00
dependabot[bot]
f81289a8fc Bump minimist from 1.2.5 to 1.2.6 in /tools/precommit
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-28 10:55:23 +02:00
Ole Schütt
bd979643ea Makefile: Use .cu extension also for HIP kernels 2022-03-20 19:41:51 +01:00
Ole Schütt
74473a6d04 Docker: User build context for precommit test 2022-03-11 17:12:55 +01:00
Ole Schütt
4444c6aef6 Makefile: Extend file naming convention to include HIP 2022-03-10 18:54:33 +01:00
Ole Schuett
e974820ca4 precommit: Add simple Makefile formatter 2022-02-07 10:02:03 +01:00
Eisuke Kawashima
85e7b7d615
Python: PEP8 fixes (#1926)
* fix [E401](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)

* fix [E711](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)

* fix [E713](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)

* fix [E722](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)

* fix [W601](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)

* fix [W605](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)
2022-02-03 11:35:01 +01:00
Hans Pabst
22173ba5bc
Issue #1889: revised PR #1879 (#1898) 2022-01-24 14:20:04 +01:00