Rosetta
Classes | Macros | Functions | Variables
test_rosetta_thread_manager_advanced_API.cc File Reference

An application to test the Rosetta thread manager. This application carries out three levels of requests for threads. Depending on the number of threads launched and the options provided, some might not be possible to field, resulting in the thread manager assigning work to fewer threads than requested. More...

#include <devel/init.hh>
#include <utility/excn/Exceptions.hh>
#include <basic/Tracer.hh>
#include <basic/options/keys/multithreading.OptionKeys.gen.hh>
#include <basic/options/option.hh>
#include <basic/options/keys/OptionKeys.hh>
#include <basic/options/option_macros.hh>
#include <core/types.hh>

Classes

class  AppSettings
 Storage for some data. More...
 

Macros

#define NUMBER_OF_NUMBERS   1000
 
#define MAX_MULTIPLE   100
 

Functions

void register_options ()
 Indicate required options. More...
 
int main (int argc, char *argv[])
 Entry point for program execution. More...
 

Variables

static basic::Tracer TR_main ("test_rosetta_thread_manager_main")
 
static basic::Tracer TR_level0 ("test_rosetta_thread_manager_level_0")
 
static basic::Tracer TR_level1 ("test_rosetta_thread_manager_level_1")
 
static basic::Tracer TR_level2 ("test_rosetta_thread_manager_level_2")
 
static basic::Tracer TR_level3 ("test_rosetta_thread_manager_level_3")
 

Detailed Description

An application to test the Rosetta thread manager. This application carries out three levels of requests for threads. Depending on the number of threads launched and the options provided, some might not be possible to field, resulting in the thread manager assigning work to fewer threads than requested.

The highest-level threads work together to calcualte a times table. Note that this tests the advanced API for the RosettaThreadManager, which is not accessible to most Rosetta modules.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org)

Macro Definition Documentation

◆ MAX_MULTIPLE

#define MAX_MULTIPLE   100

◆ NUMBER_OF_NUMBERS

#define NUMBER_OF_NUMBERS   1000

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)

◆ register_options()

void register_options ( )

Variable Documentation

◆ TR_level0

basic::Tracer TR_level0("test_rosetta_thread_manager_level_0") ( "test_rosetta_thread_manager_level_0"  )
static

◆ TR_level1

basic::Tracer TR_level1("test_rosetta_thread_manager_level_1") ( "test_rosetta_thread_manager_level_1"  )
static

◆ TR_level2

basic::Tracer TR_level2("test_rosetta_thread_manager_level_2") ( "test_rosetta_thread_manager_level_2"  )
static

◆ TR_level3

basic::Tracer TR_level3("test_rosetta_thread_manager_level_3") ( "test_rosetta_thread_manager_level_3"  )
static

◆ TR_main

basic::Tracer TR_main("test_rosetta_thread_manager_main") ( "test_rosetta_thread_manager_main"  )
static

Referenced by main().