Skip to content

Conversation

@steiltre
Copy link
Collaborator

No description provided.

steiltre and others added 30 commits June 30, 2025 16:10
Updating YGM version number to v0.9
Add a top-level `concurrency` block to all workflows in the new project
so that when a newer commit on the same branch is pushed, any queued or
in-progress jobs from older commits are automatically cancelled. This
change was applied to:

- `.github/workflows/build-pdf-docs.yaml`
- `.github/workflows/ci-test.yaml`
- `.github/workflows/ci-test-macos.yaml`
- `.github/workflows/test_docs_build.yaml`

Each now contains:

```yaml
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true
ci: add concurrency groups to cancel obsolete CI runs
…timestamp

Setting CMake policy for DOWNLOAD_EXTRACT_TIMESTAMP
* Parquet: accept existing python env

---------

Co-authored-by: Keita Iwabuchi <iwabuchi1@lln.gov>
Fix typo in getting_started.rst
Removes ygm_ptr::operator->() that returned a const pointer
steiltre and others added 19 commits October 3, 2025 13:55
* Adds missing spdlog.h include to logger.hpp
* added workqueue elements

* added required std::queue include

* Minor edits for workqueue

* removed size(), fixed naming, added lifo

Removed base_misc-inherited functions that do not fit current workqueue model, revised function names to fit YGM naming conventions, and added lifo queue policy

* Preliminary workqueue tests

* Added recursive tests

* Added array traversal tests

* refined workqueue and added additional tests

* Final workqueue class polish and added multi-batch tests

* pointer to workqueue no longer required in work_lambda

* final checks before opening PR to base repo

* revised pointer use in workqueue callback and lambda arguments in tests to prevent compiler warnings

* changed workqueue to work_queue

* fixed work_queue naming in tests

* Fix test name in CMakeLists
* Adds ability to log to stdout and stderr

* Adds rank information to cout and cerr loggers
* Fixes issues with multiple definitions from inclusion of boost::json and not having inlined functions and adds dummy test with multiple compilation units

* Adds parquet_parser to multiple compilation unit tests and adds missing inline
* Added alias table to ygm. Created new namespace ygm::random.

* Modified types names and cleaned up a few other things. Still need to clean up the use of concepts.

* Modified files relying on ygm/random.hpp to point to ygm/random/random.hpp

* Changed 4 space indentation to 2 space. Also moved ygm::detail::random_engine to ygm::random::random_engine

* Modified the traits of the alias_table constructor that takes in a YGM value container

* Updated concepts to make use of existing YGM SingleItemTuple DoubleItemTuple concepts that take as input for_all_args type. Also added constructor that builds the alias table from an STL container

* Modified async_sample function to now capture visitor lambda in wrapper lambda.

* Fixed local alias table construction bug. Simplified async_sample() logic. Wrote test for various constructors and tested sampling accuracy via sampling words from corpus and comparing to ground truth frequency

* Added more sampling in alias table test to get better sampling frequency accuracy

* Wrote additional tests to ensure alias table weight balancing code can handle a variety of distributions

* Altered alias table construction to not normalize weight. This means the average local weight is no longer 1. This was done to decrease the errors associated with inexact floating point operations

* Fixed uninitialized variable error in balancing function. Testing has showed this has fixed the bug, but consistently reproducing the bug has proved to be difficult, so bug might still be present

* Removed unnecessary weight checks, also altered constructor to either take a seed for the rng or create an rng with a rag with a random seed

* Modified test to adhere to new ygm::random organization

* Changed implemenation to use ygm collectives rather than directly calling MPI collectives
@steiltre steiltre merged commit 75ee62d into master Jan 23, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants