Tervel  1.0.0
A collection of wait-free containers and algorithms.
Classes | Typedefs | Enumerations | Functions
testObject.h File Reference
#include <functional>
#include <climits>
#include <assert.h>
#include <atomic>
#include <random>
#include <string>
#include <cstdint>
#include <stdio.h>
#include <iostream>
#include <gflags/gflags.h>
#include <tervel/tests/mcas/container_api.h>

Go to the source code of this file.

Classes

class  TestObject
 
struct  TestObject::counter
 

Typedefs

typedef uint64_t Value
 

Enumerations

enum  TestType : size_t { TestType::UPDATEOBJECT = 0, TestType::UPDATEMULTIOBJECT = 1, TestType::RANDOMOVERLAPS = 2 }
 

Functions

 DEFINE_int32 (array_length, 32,"The size of the region to test on.")
 Change this when including a new data structure. More...
 
 DEFINE_int32 (mcas_size, 2,"The number of words in a mcas operation.")
 
 DEFINE_int32 (operation_type, 0,"The type of test to execute""(0: updating single multi-word object"", 1: updating multiple objects"", 2: updating overlapping multi-word updates)")
 Operation Parameters. More...
 
 DEFINE_int32 (num_threads, 1,"The number of threads to spawn.")
 Arguments for Tester. More...
 
 DEFINE_int32 (execution_time, 5,"The amount of time to run the tests")
 

Typedef Documentation

typedef uint64_t Value

Enumeration Type Documentation

enum TestType : size_t
strong
Enumerator
UPDATEOBJECT 
UPDATEMULTIOBJECT 
RANDOMOVERLAPS 

Function Documentation

DEFINE_int32 ( array_length  ,
32  ,
"The size of the region to test on."   
)

Change this when including a new data structure.

Change these when adapting to a new data structures

DEFINE_int32 ( mcas_size  ,
,
"The number of words in a mcas operation."   
)
DEFINE_int32 ( operation_type  ,
,
"The type of test to execute""(0: updating single multi-word object"", 1: updating multiple objects"", 2: updating overlapping multi-word updates)"   
)

Operation Parameters.

DEFINE_int32 ( num_threads  ,
,
"The number of threads to spawn."   
)

Arguments for Tester.

DEFINE_int32 ( execution_time  ,
,
"The amount of time to run the tests"   
)