Project

General

Profile

Feature #15656

Milestone #15372: art multi-threading phase 1

Feature #15374: Modifying all framework-provided services to be thread safe.

Make RandomNumberGenerator service thread safe

Added by Kyle Knoepfel over 2 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Target version:
Start date:
02/24/2017
Due date:
% Done:

100%

Estimated time:
8.00 h
Spent time:
Scope:
Internal
Experiment:
-
SSI Package:
art
Duration:

Description

This involves making the service stream-aware. However, thread-safety is likely not a problem because creating the engines is done only at configuration time. Moving to using TBB concurrent containers could be helpful.

History

#1 Updated by Kyle Knoepfel over 2 years ago

  • % Done changed from 0 to 90

This task has been largely completed with commit art:78952fc9. What still remains:

  • Some interface will have to be introduced that allows a (e.g.) global module to specify the appropriate random-number engine for a given schedule ID.
  • Some thought should be given as to how to handle seeding of per-schedule engines, especially if the creation of the multiple engines is hidden from the user.
  • Adequate testing has not yet been done to ensure that concurrent engine retrieval from multiple schedules is correctly implemented. It may be hard to test that until parallel schedules are, in-fact, implemented.

#2 Updated by Kyle Knoepfel over 2 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 90 to 100

Concurrent usage/retrieval of engines tested with commit art:0ee59041.

#3 Updated by Kyle Knoepfel over 2 years ago

  • Target version set to 1209

#4 Updated by Kyle Knoepfel about 2 years ago

  • Target version changed from 1209 to 2.07.01

#5 Updated by Kyle Knoepfel about 2 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF