- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, Intel technician,
when I set the environmental variable OMP_SCHEDULE = runtime, the following warning is given:
D:\users\dingjun\build\data>mx201610.exe -f D:\users\dingjun\build\data\mx8321x105x10.dat -log -jacdoms 32 -parasol 32 -o mx8321x105x10_32cores1job_i
mbdw2s11_windows_runtime_compact1_affinity_manualRun_1
OMP: Warning #42: OMP_SCHEDULE: "runtime" is an invalid value; ignored.
OMP: Info #204: KMP_AFFINITY: decoding x2APIC ids.
OMP: Info #202: KMP_AFFINITY: Affinity capable, using global cpuid leaf 11 info
OMP: Info #154: KMP_AFFINITY: Initial OS proc set respected: {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31}
OMP: Info #156: KMP_AFFINITY: 32 available OS procs
OMP: Info #157: KMP_AFFINITY: Uniform topology
OMP: Info #179: KMP_AFFINITY: 2 packages x 16 cores/pkg x 1 threads/core (32 total cores)
Could you tell me why the runtime value is invalid? according to your manual, it seems to be valid. please see the following:
Type |
Effect |
---|---|
STATIC |
Divides iterations into contiguous pieces by dividing the number of iterations by the number of threads in the team. Each piece is then dispatched to a thread before loop execution begins. If chunk is specified, iterations are divided into pieces of a size specified by chunk. The pieces are statically dispatched to threads in the team in a round-robin fashion in the order of the thread number. |
DYNAMIC |
Can be used to get a set of iterations dynamically. It defaults to 1 unless chunk is specified. If chunk is specified, the iterations are broken into pieces of a size specified by chunk. As each thread finishes a piece of the iteration space, it dynamically gets the next set of iterations. |
GUIDED |
Can be used to specify a minimum number of iterations. It defaults to 1 unless chunk is specified. If chunk is specified, the chunk size is reduced exponentially with each succeeding dispatch. The chunk specifies the minimum number of iterations to dispatch each time. If there are less than chunk iterations remaining, the rest are dispatched. |
AUTO1 |
Delegates the scheduling decision until compile time or run time. The schedule is processor dependent. The programmer gives the implementation the freedom to choose any possible mapping of iterations to threads in the team. |
RUNTIME1 |
Defers the scheduling decision until run time. You can choose a schedule type and chunk size at run time by using the environment variable OMP_SCHEDULE. |
1No chunk is permitted for this type. |
I look forward to hearing from you. Thanks.
best regards,
Dingjun
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It doesn't work that way. Schedule(runtime) clause in compiled source code causes the runtime library to look for omp_schedule environment setting to be one of those specific options. Runtime is not among the valid environment settings.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your reply.
For environmental variable OMP_SCHEDULE, how many values can we set? static, dynamic, auto, and guided? Is there any other value available for settings?
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page