![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OMPi运行时库源码注释
文章平均质量分 69
u011583439
这个作者很懒,什么都没留下…
展开
-
ort_private.h
#ifndef ORT_PRIVE_H#define ORT_PRIVE_H#include "ort.h"#include "pthreads/ee.h"//定义最大的活跃并行域数目限制#define MAXACTIVEREGIONS 50//定义工作分担类型,工作分担有三中:SINGLE、SECTIONS、FOR#define _OMP_SINGLE 0#define原创 2013-09-02 09:21:41 · 845 阅读 · 0 评论 -
sysdeps.c
#include "sysdeps.h"#include int ort_get_num_procs(void){//获取系统的处理器内核数目 int np; np = sysconf(_SC_NPROCESSORS_ONLN);//从系统信息中获取内核数目信息 if (np <= 0) {//获取内核数目失败,将内核数目设置为1 extern void ort_w原创 2013-09-02 09:24:30 · 728 阅读 · 0 评论 -
ort_workstealing.c
#include "ort_prive.h"#include #include #define FAILURE 0#define SUCCESS 1/* Allocate memory for my group task queues */inline void ort_task_queues_init(ort_eecb_t *me, int nthr){ int i;原创 2013-09-02 09:25:57 · 611 阅读 · 0 评论 -
ort_tasks.c
#include "ort_prive.h"#include #include #define FAILURE 0#define NO_TASKS_LEFT -1#define NO_VICTIM_LEFT -1//流量控制模块,开启流量控制时任务立即执行而不放到任务队列中去ee_key_t throttle_key;//开启流量控制#define __start_thr原创 2013-09-02 09:27:31 · 825 阅读 · 0 评论 -
ort_pools.c
#include "ort_prive.h"#include #include ort_task_node_t* ort_task_alloc(void* (*func)(void *), void *arg){ if(arg != NULL)//任务函数参数非空,那么就返回此参数所在的任务节点 return *((ort_task_node_t **)PP(arg));原创 2013-09-02 09:28:24 · 711 阅读 · 0 评论 -
ort_omp.c
#include "ort_prive.h"#include #include //判断当前位置是否在并行域内,判断的依据是当前的eecb的活跃层次数是否为0int omp_in_parallel(void) { return ( __MYCB->activelevel != 0 ); }//获取当前eecb的组内IDint omp_get_thread_num(voi原创 2013-09-02 09:29:16 · 770 阅读 · 0 评论 -
ee.h
#ifndef EE_H#define EE_H#include "../config.h"#include #include #include "../sysdeps.h"//此头文件提供线程库对ort的支持//线程库只会提供两只类型:othr_lock_t和othr_key_t,嵌套锁类型不会在线程库外使用//嵌套锁类型结构体,只在线程库内部使用typedef stru原创 2013-09-02 09:31:03 · 719 阅读 · 0 评论 -
othr.c
#include "../config.h"#include "../ort.h"#include #include #include "ee.h"//创建任务的线程是master,协作执行的是worker#define WORKER_YIELD 50#define MASTER_YIELD 1000//自旋等待宏,f为假时终止循环#define WAIT_WHILE(f, t原创 2013-09-02 09:31:48 · 8665 阅读 · 0 评论