souffle  2.0.2-371-g6315b36
Data Structures | Namespaces | Macros | Functions
ParallelUtil.h File Reference
#include <atomic>
Include dependency graph for ParallelUtil.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  souffle::OptimisticReadWriteLock::Lease
 
class  souffle::Lock::Lease
 
struct  souffle::Lock
 A small utility class for implementing simple locks. More...
 
class  souffle::OptimisticReadWriteLock
 A 'sequential' non-locking implementation for an optimistic r/w lock. More...
 
class  souffle::ReadWriteLock
 
class  souffle::SpinLock
 A 'sequential' non-locking implementation for a spin lock. More...
 

Namespaces

 souffle
 

Macros

#define CREATE_OP_CONTEXT(NAME, INIT)   [[maybe_unused]] auto NAME = INIT;
 
#define IS_SEQUENTIAL
 
#define MAX_THREADS   (1)
 
#define PARALLEL_END   }
 
#define PARALLEL_START   {
 
#define pfor   for
 
#define READ_OP_CONTEXT(NAME)   NAME
 
#define SECTION_END   }
 
#define SECTION_START   {
 
#define SECTIONS_END   }
 
#define SECTIONS_START   {
 
#define task_spawn
 
#define task_sync
 

Functions

Lock & souffle::getOutputLock ()
 Obtains a reference to the lock synchronizing output operations. More...
 

Macro Definition Documentation

◆ CREATE_OP_CONTEXT

#define CREATE_OP_CONTEXT (   NAME,
  INIT 
)    [[maybe_unused]] auto NAME = INIT;

Definition at line 83 of file ParallelUtil.h.

◆ IS_SEQUENTIAL

#define IS_SEQUENTIAL

Definition at line 87 of file ParallelUtil.h.

◆ MAX_THREADS

#define MAX_THREADS   (1)

Definition at line 98 of file ParallelUtil.h.

◆ PARALLEL_END

#define PARALLEL_END   }

Definition at line 65 of file ParallelUtil.h.

◆ PARALLEL_START

#define PARALLEL_START   {

Definition at line 64 of file ParallelUtil.h.

◆ pfor

#define pfor   for

Definition at line 68 of file ParallelUtil.h.

◆ READ_OP_CONTEXT

#define READ_OP_CONTEXT (   NAME)    NAME

Definition at line 84 of file ParallelUtil.h.

◆ SECTION_END

#define SECTION_END   }

Definition at line 80 of file ParallelUtil.h.

◆ SECTION_START

#define SECTION_START   {

Definition at line 79 of file ParallelUtil.h.

◆ SECTIONS_END

#define SECTIONS_END   }

Definition at line 76 of file ParallelUtil.h.

◆ SECTIONS_START

#define SECTIONS_START   {

Definition at line 75 of file ParallelUtil.h.

◆ task_spawn

#define task_spawn

Definition at line 71 of file ParallelUtil.h.

◆ task_sync

#define task_sync

Definition at line 72 of file ParallelUtil.h.