libflame  revision_anchor
Functions
FLA_Lock.c File Reference

(r)

Functions

void FLA_Lock_init (FLA_Lock *fla_lock_ptr)
 
void FLA_Lock_acquire (FLA_Lock *fla_lock_ptr)
 
void FLA_Lock_release (FLA_Lock *fla_lock_ptr)
 
void FLA_Lock_destroy (FLA_Lock *fla_lock_ptr)
 

Function Documentation

◆ FLA_Lock_acquire()

void FLA_Lock_acquire ( FLA_Lock fla_lock_ptr)
49 {
50 #if FLA_MULTITHREADING_MODEL == FLA_OPENMP
51  omp_set_lock( &(fla_lock_ptr->lock) );
52 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
53  pthread_mutex_lock( &(fla_lock_ptr->lock) );
54 #endif
55 }
omp_lock_t lock
Definition: FLA_type_defs.h:105

References FLA_Lock_s::lock.

Referenced by FLA_free(), FLA_malloc(), FLASH_Queue_check_block_gpu(), FLASH_Queue_exec_gpu(), FLASH_Queue_exec_parallel_function(), FLASH_Queue_flush_block_gpu(), FLASH_Queue_flush_gpu(), FLASH_Queue_invalidate_block_gpu(), FLASH_Queue_mark_gpu(), FLASH_Queue_update_block_gpu(), FLASH_Queue_update_cache_block(), FLASH_Queue_wait_dequeue(), FLASH_Queue_work_stealing(), FLASH_Task_free_parallel(), FLASH_Task_update_binding(), and FLASH_Task_update_dependencies().

◆ FLA_Lock_destroy()

void FLA_Lock_destroy ( FLA_Lock fla_lock_ptr)
79 {
80 #if FLA_MULTITHREADING_MODEL == FLA_OPENMP
81  omp_destroy_lock( &(fla_lock_ptr->lock) );
82 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
83  pthread_mutex_destroy( &(fla_lock_ptr->lock) );
84 #endif
85 }

References FLA_Lock_s::lock.

Referenced by FLASH_Queue_exec().

◆ FLA_Lock_init()

void FLA_Lock_init ( FLA_Lock fla_lock_ptr)
34 {
35 #if FLA_MULTITHREADING_MODEL == FLA_OPENMP
36  omp_init_lock( &(fla_lock_ptr->lock) );
37 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
38  pthread_mutex_init( &(fla_lock_ptr->lock), NULL );
39 #endif
40 }

References FLA_Lock_s::lock.

Referenced by FLASH_Queue_exec().

◆ FLA_Lock_release()

void FLA_Lock_release ( FLA_Lock fla_lock_ptr)