Skip to content

Commit b7a20ed

Browse files
Merge pull request ComputationalRadiationPhysics#883 from ax3l/topic-updateW010updates
Update `dev` with `0.1.0` Release Updates
2 parents e394fb1 + c97702f commit b7a20ed

File tree

3 files changed

+153
-0
lines changed

3 files changed

+153
-0
lines changed

CHANGELOG.md

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,133 @@
11
Change Log / Release Log for PIConGPU
22
================================================================
33

4+
0.1.0
5+
-----
6+
**Date:** 2015-05-21
7+
8+
This is version `0.1.0` of PIConGPU, a *pre-beta* version.
9+
10+
Initial field ionization support was added, including the first model for BSI.
11+
The code-base was substantially hardened, fixing several minor and major
12+
issues. Especially, several restart related issues, an issue with 2D3V zigzack
13+
current calculation and a memory issue with Jetson TK1 boards were fixed.
14+
A work-around for a critical CUDA 6.5 compiler bug was applied to all affected
15+
parts of the code.
16+
17+
### Changes to "Open Beta RC6"
18+
19+
**.param file changes:**
20+
See full syntax for each file at
21+
https://github.com/ComputationalRadiationPhysics/picongpu/tree/0.1.0/src/picongpu/include/simulation_defines/param
22+
- `componentsConfig.param` & `gasConfig.param` fix typo `gasHomogeneous` #577
23+
- `physicalConstants.param`: new variable `GAMMA_THRESH` #669
24+
- `speciesAttributes.param`: new identifier `boundElectrons` and
25+
new aliases `ionizer`, `atomicNumbers`
26+
- `ionizationEnergies.param`, `ionizerConfig.param`: added
27+
28+
**.unitless file changes:**
29+
See full syntax for each file at
30+
https://github.com/ComputationalRadiationPhysics/picongpu/tree/0.1.0/src/picongpu/include/simulation_defines/unitless
31+
- `gasConfig.unitless`: typo in `gasHomogeneous` #577
32+
- `speciesAttributes.unitless`: new unit for `boundElectrons` identifier
33+
- `speciesDefinition.unitless`: new traits `GetCharge`, `GetMass`,
34+
`GetChargeState` and added `ionizers`
35+
- `ionizerConfig.unitless`: added
36+
37+
**New Features:**
38+
- initial support for field ionization:
39+
- basic framework and BSI #595
40+
- attribute (constant flag) for proton and neutron number #687 #731
41+
- attribute `boundElectrons` #706
42+
- tools:
43+
- python scripts:
44+
- new reader for `SliceFieldPrinter` plugin #578
45+
- new analyzer tool for numerical heating #672 #692
46+
- `cuda_memtest`:
47+
- 32bit host system support (Jetson TK1) #583
48+
- works without `nvidia-smi`, `grep` or `gawk` - optional with NVML for
49+
GPU serial number detection (Jetson TK1) #626
50+
- `splash2txt`:
51+
- removed build option `S2T_RELEASE` and uses `CMAKE_BUILD_TYPE` #591
52+
- `tbg`:
53+
- allows for defaults for `-s`, `-t`, `-c` via env vars #613 #622
54+
- 3D live visualization: `server` tool that collects `clients` and
55+
simulations was published #641
56+
- new/updated particle traits and attributes:
57+
- `getCharge`, `getMass` #596
58+
- attributes are now automatically initialized to their generic
59+
defaults #607 #615
60+
- libPMacc:
61+
- machine-dependent `UInt` vector class is now split in explicit
62+
`UInt32` and `UInt64` classes #665
63+
- nvidia random number generators (RNG) refactored #711
64+
- plugins:
65+
- background fields do now affect plugins/outputs #600
66+
- `Radiation` uses/requires HDF5 output #419 #610 #628 #646 #716
67+
- `SliceFieldPrinter` supports `FieldJ`, output in one file,
68+
updated command-line syntax #548
69+
- `CountParticles`, `EnergyFields`, `EnergyParticles` support restarts
70+
without overwriting their previous output #636 #703
71+
72+
**Bug Fixes:**
73+
- CUDA 6.5: `int(bool)` casts were broken (affects plugins
74+
`BinEnergyParticles`, `PhaseSpace` and might had an effect on methods of the
75+
basic PIC cycle) #570 #651 #656 #657 #678 #680
76+
- the ZigZag current solver was broken for 2D3V if non-zero
77+
momentum-components in z direction were used (e.g. warm plasmas or
78+
purely transversal KHI) #823
79+
- host-device-shared memory (SoC) support was broken (Jetson TK1) #633
80+
- boost 1.56.0+ support via `Resolve<T>` trait #588 #593 #594
81+
- potential race condition in field update and pusher #604
82+
- using `--gridDist` could cause a segfault when adding additional arguments,
83+
e.g., in 2D3V setups #638
84+
- `MessageHeader` (used in `png` and 2D live visualization) leaked memory #683
85+
- restarts with HDF5:
86+
- static load-balancing via `--gridDist` in y-direction was broken #639
87+
- parallel setups with particle-empty GPUs hung with HDF5 #609 #611 #642
88+
- 2D3V field reads were broken (each field's z-component was not initialized
89+
with the checkpointed values again, e.g., `B_z`) #688 #689
90+
- loading more than 4 billion global particles was potentially broken #721
91+
- plugins:
92+
- `Visualization` (png & 2D live sim) memory bug in double precision runs #621
93+
- `ADIOS`
94+
- storing more than 4 billion particles was broken #666
95+
- default of `adios.aggregators` was broken (now = MPI_Size) #662
96+
- parallel setups with particle-empty GPUs did hang #661
97+
- `HDF5`/`ADIOS` output of grid-mapped particle energy for non-relativistic
98+
particles was zero #669
99+
- libPMacc:
100+
- CMake: path detection could fail #796 #808
101+
- `DeviceBuffer<*,DIM3>::getPointer()` was broken (does not affect
102+
PIConGPU) #647
103+
- empty super-cell memory foot print reduced #648
104+
- `float2int` return type should be int #623
105+
- CUDA 7:
106+
- cuSTL prefixed templates with `_` are not allowed; usage of static dim
107+
member #630
108+
- explicit call to `template`-ed `operator()` to avoid waring #750
109+
- `EnvironmentController` caused a warning about `extendend friend syntax` #644
110+
- multi-GPU nodes might fail to start up when not using `default` compute
111+
mode with CUDA 7 drivers #643
112+
113+
**Misc:**
114+
- HDF5 support requires libSplash 1.2.4+ #642 #715
115+
- various code clean-up for MSVC #563 #564 #566 #624 #625
116+
- plugins:
117+
- removed `LineSliceFields` #590
118+
- `png` plugin write speedup ~2.3x by increasing file size about 12% #698
119+
- updated contribution guidelines, install, cfg examples #601 #598 #617 #620
120+
#673 #700 #714
121+
- updated module examples and cfg files for:
122+
- lawrencium (LBL) #612
123+
- titan (ORNL) #618
124+
- hypnos (HZDR) #670
125+
- an `Empty` example was added, which defaults to the setup given by
126+
all `.param` files in default mode (a standard PIC cycle without lasers nor
127+
particles), see `src/picongpu/include/simulation_defines/` #634
128+
- some source files had wrong file permissions #668
129+
130+
4131
Open Beta RC6
5132
-------------
6133
**Date:** 2014-11-25

src/picongpu/include/simulation_types.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
#pragma once
2424

25+
#include "version.hpp"
2526
#include "algorithms/TypeCast.hpp"
2627
#include "algorithms/PromoteType.hpp"
2728
#include "algorithms/ForEach.hpp"

src/picongpu/include/version.hpp

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/**
2+
* Copyright 2015 Axel Huebl
3+
*
4+
* This file is part of PIConGPU.
5+
*
6+
* PIConGPU is free software: you can redistribute it and/or modify
7+
* it under the terms of the GNU General Public License as published by
8+
* the Free Software Foundation, either version 3 of the License, or
9+
* (at your option) any later version.
10+
*
11+
* PIConGPU is distributed in the hope that it will be useful,
12+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
* GNU General Public License for more details.
15+
*
16+
* You should have received a copy of the GNU General Public License
17+
* along with PIConGPU.
18+
* If not, see <http://www.gnu.org/licenses/>.
19+
*/
20+
21+
#pragma once
22+
23+
#define PICONGPU_VERSION_MAJOR 0
24+
#define PICONGPU_VERSION_MINOR 1
25+
#define PICONGPU_VERSION_PATCH 0

0 commit comments

Comments
 (0)