Releases: NSLS-II/ptycho_gui
v1.4.0
The new release v1.4.0 contains a number of new features (some are experimental, see below) and bug fixes.
As a kind reminder, users of this software should cite our papers (DOI: 10.1109/NYSDS.2018.8538964; another in preparation). While this is not a mandatory requirement as per our software license, it does offer a strong incentive and justification for us to seek support for maintaining and enhancing the software.
On the frontend:
- Support both HXN and CSX databrokers (#65):
- A new check "Assoc. scans" is added next to the main scan number. An input string like
1234-1236, 1238
can be resolved to1234, 1235, 1236, 1238
as expected. The associate scan numbers are memorized during shutdown. (#87) - For CSX experiments, the dark/flat scans associated with the main scan can corbe set in "Assoc. scans" for pre-processing scan data and visualization.
- To access CSX databroker, csxtools v0.1.15+ is required.
- Internally, a set of APIs is defined in
nsls2ptycho/core/databroker_api.py
for databroker access. This allows future extension to support other beamlines. (#10)
- A new check "Assoc. scans" is added next to the main scan number. An input string like
- The "RESET" button in the ROI window can be used to reset all parameters and ROIs now. (#81)
- Fix startup error when databroker is not present on HXN/CSX machines. (#86)
- Fix red ROIs sometimes cannot be re-selected. (#78)
- Fix the parameters in the ROI window being mistakenly memorized. (#79)
- Fix an error when the red ROI's dimensions are odd numbers. (#82)
- Fix the limitation for Bragg input fields.
- Other internal fixes, cleanups, and refactoring (#64, #83, #85, #87)
On the backend:
- Add two new solvers mADMM & PM (NSLS-II/ptycho#44):
- This is currently an experimental feature and will be stabilized in the next release (v1.5.0).
- To use them in the GUI, follow the steps below:
- Select "DM" as the algorithm in the "Reconstruction parameters" tab
- Switch to the "Advanced option 1" tab
- For mADMM, set “DM ver.” to be 8; for PM, set it to be 9.
- To switch between "Poisson" and "Gaussian", set it in the "ML mode".
- To change the weight "lambda" for mADMM, set it in the "ML weight".
- Users of the new solvers are advised to cite New J. Phys. 22 023035 (2020).
- Support necessary changes in the frontend (NSLS-II/ptycho#48)
v1.3.1
Changelog
Common changes:
- The project is now hosted under the NSLS-II domain.
- A simple script is provided to generate synthesized data for testing the software's speed, see
ptycho_gui/nsls2ptycho/core/ptycho/test_data/README.md
or this README (in the private repo) for the instruction.
On the frontend:
v1.3.0
v1.2.0
Change Log
On the frontend:
- Support using NCCL or CUDA-aware MPI for inter-process communication.
- Replace GPU buttons by text input. For example, do
0, 2-4
to use GPUs 0, 2, 3, and 4. - Allow ML weight to be set.
- Windows will not overlap with each other now
- The scan-point distribution window can be set to close
- All windows can be closed at once by clicking the X button in the main window
- Remove frames with 0 photon counts from Databroker input
- Bugs fixed
On the backend:
- Support the changes made in the frontend.
- Changed the implementations of ML and RAAR.
- ML is GPU-accelerated.
- Bugs fixed.
v1.1.4
v1.1.2
v1.1.1
Changelog
On the frontend:
- removed some redundant codes
- fixed a GUI bug that some input fields are not enabled when the corresponding check box is checked
- set the Numba solvers (
dm_version = 2
) to be the default - cleared up shared memory segments properly (see 1d873d4)
On the backend:
- supported refining/relaxing data on GPU for
DM
,DM_real
, andRAAR
(currently only single-mode is supported) - some code refactoring for hygienic purposes
v1.1.0
Changelog
On the frontend:
- The distribution of scan points over MPI processes (or GPUs if used) is plotted in a new window
- The monitor window is enlarged so that both the amplitudes and phases are plotted simultaneously
- The "Clear shared memory" function is added to the top toolbar (Options -> Clear shared memory)
- The errors are now plotted in log scale
- Added several options to "Advanced Options" (now it has 2 tabs; see #43)
On the backend:
- Added initial Numba support for
DM
andDM_real
- The post-processing is significantly sped up
Note: If installed through pip, it will attempt to install Numba if it is not installed and if GPU support is needed. But if installed through Conda, this dependency is handled through Conda, not pip.