/src/imagemagick/MagickCore/thread-private.h
Line | Count | Source |
1 | | /* |
2 | | Copyright @ 1999 ImageMagick Studio LLC, a non-profit organization |
3 | | dedicated to making software imaging solutions freely available. |
4 | | |
5 | | You may not use this file except in compliance with the License. You may |
6 | | obtain a copy of the License at |
7 | | |
8 | | https://imagemagick.org/license/ |
9 | | |
10 | | Unless required by applicable law or agreed to in writing, software |
11 | | distributed under the License is distributed on an "AS IS" BASIS, |
12 | | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
13 | | See the License for the specific language governing permissions and |
14 | | limitations under the License. |
15 | | |
16 | | MagickCore private methods for internal threading. |
17 | | */ |
18 | | #ifndef MAGICKCORE_THREAD_PRIVATE_H |
19 | | #define MAGICKCORE_THREAD_PRIVATE_H |
20 | | |
21 | | #include "MagickCore/cache.h" |
22 | | #include "MagickCore/image-private.h" |
23 | | #include "MagickCore/resource_.h" |
24 | | #include "MagickCore/thread_.h" |
25 | | |
26 | | #if defined(__cplusplus) || defined(c_plusplus) |
27 | | extern "C" { |
28 | | #endif |
29 | | |
30 | | #define magick_number_threads(source,destination,chunk,factor) \ |
31 | | num_threads(GetMagickNumberThreads((source),(destination),(chunk),(factor))) |
32 | | #if defined(__clang__) || (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 10)) |
33 | | #define MagickCachePrefetch(address,mode,locality) \ |
34 | 113M | __builtin_prefetch(address,mode,locality) |
35 | | #else |
36 | | #define MagickCachePrefetch(address,mode,locality) \ |
37 | | magick_unreferenced(address); \ |
38 | | magick_unreferenced(mode); \ |
39 | | magick_unreferenced(locality); |
40 | | #endif |
41 | | |
42 | | #if defined(MAGICKCORE_THREAD_SUPPORT) |
43 | | typedef pthread_mutex_t MagickMutexType; |
44 | | #elif defined(MAGICKCORE_WINDOWS_SUPPORT) |
45 | | typedef CRITICAL_SECTION MagickMutexType; |
46 | | #else |
47 | | typedef size_t MagickMutexType; |
48 | | #endif |
49 | | |
50 | | static inline int GetMagickNumberThreads(const Image *source, |
51 | | const Image *destination,const size_t chunk,const int factor) |
52 | 19.5k | { |
53 | 19.5k | const CacheType |
54 | 19.5k | destination_type = (CacheType) GetImagePixelCacheType(destination), |
55 | 19.5k | source_type = (CacheType) GetImagePixelCacheType(source); |
56 | | |
57 | 19.5k | size_t |
58 | 19.5k | max_threads = (size_t) GetMagickResourceLimit(ThreadResource), |
59 | 19.5k | number_threads = 1UL, |
60 | 19.5k | workload_factor = 64UL << factor; |
61 | | |
62 | | /* |
63 | | Determine number of threads based on workload. |
64 | | */ |
65 | 19.5k | number_threads=(chunk <= workload_factor) ? 1UL : |
66 | 19.5k | (chunk >= (workload_factor << 6)) ? max_threads : |
67 | 362 | 1UL+(chunk-workload_factor)*(max_threads-1L)/(((workload_factor << 6))-1L); |
68 | | /* |
69 | | Limit threads for non-memory or non-map cache sources/destinations. |
70 | | */ |
71 | 19.5k | if (((source_type != MemoryCache) && (source_type != MapCache)) || |
72 | 19.5k | ((destination_type != MemoryCache) && (destination_type != MapCache))) |
73 | 0 | number_threads=MagickMin(number_threads,4); |
74 | 19.5k | return((int) number_threads); |
75 | 19.5k | } Unexecuted instantiation: annotate.c:GetMagickNumberThreads Unexecuted instantiation: attribute.c:GetMagickNumberThreads Unexecuted instantiation: cache.c:GetMagickNumberThreads Unexecuted instantiation: cache-view.c:GetMagickNumberThreads Unexecuted instantiation: channel.c:GetMagickNumberThreads Unexecuted instantiation: colormap.c:GetMagickNumberThreads Unexecuted instantiation: colorspace.c:GetMagickNumberThreads Unexecuted instantiation: compare.c:GetMagickNumberThreads Unexecuted instantiation: composite.c:GetMagickNumberThreads Unexecuted instantiation: constitute.c:GetMagickNumberThreads Unexecuted instantiation: decorate.c:GetMagickNumberThreads Unexecuted instantiation: display.c:GetMagickNumberThreads Unexecuted instantiation: distort.c:GetMagickNumberThreads Unexecuted instantiation: distribute-cache.c:GetMagickNumberThreads draw.c:GetMagickNumberThreads Line | Count | Source | 52 | 19.5k | { | 53 | 19.5k | const CacheType | 54 | 19.5k | destination_type = (CacheType) GetImagePixelCacheType(destination), | 55 | 19.5k | source_type = (CacheType) GetImagePixelCacheType(source); | 56 | | | 57 | 19.5k | size_t | 58 | 19.5k | max_threads = (size_t) GetMagickResourceLimit(ThreadResource), | 59 | 19.5k | number_threads = 1UL, | 60 | 19.5k | workload_factor = 64UL << factor; | 61 | | | 62 | | /* | 63 | | Determine number of threads based on workload. | 64 | | */ | 65 | 19.5k | number_threads=(chunk <= workload_factor) ? 1UL : | 66 | 19.5k | (chunk >= (workload_factor << 6)) ? max_threads : | 67 | 362 | 1UL+(chunk-workload_factor)*(max_threads-1L)/(((workload_factor << 6))-1L); | 68 | | /* | 69 | | Limit threads for non-memory or non-map cache sources/destinations. | 70 | | */ | 71 | 19.5k | if (((source_type != MemoryCache) && (source_type != MapCache)) || | 72 | 19.5k | ((destination_type != MemoryCache) && (destination_type != MapCache))) | 73 | 0 | number_threads=MagickMin(number_threads,4); | 74 | 19.5k | return((int) number_threads); | 75 | 19.5k | } |
Unexecuted instantiation: effect.c:GetMagickNumberThreads Unexecuted instantiation: enhance.c:GetMagickNumberThreads Unexecuted instantiation: feature.c:GetMagickNumberThreads Unexecuted instantiation: fourier.c:GetMagickNumberThreads Unexecuted instantiation: fx.c:GetMagickNumberThreads Unexecuted instantiation: image.c:GetMagickNumberThreads Unexecuted instantiation: layer.c:GetMagickNumberThreads Unexecuted instantiation: log.c:GetMagickNumberThreads Unexecuted instantiation: magic.c:GetMagickNumberThreads Unexecuted instantiation: magick.c:GetMagickNumberThreads Unexecuted instantiation: coder.c:GetMagickNumberThreads Unexecuted instantiation: matrix.c:GetMagickNumberThreads Unexecuted instantiation: morphology.c:GetMagickNumberThreads Unexecuted instantiation: opencl.c:GetMagickNumberThreads Unexecuted instantiation: paint.c:GetMagickNumberThreads Unexecuted instantiation: pixel.c:GetMagickNumberThreads Unexecuted instantiation: policy.c:GetMagickNumberThreads Unexecuted instantiation: prepress.c:GetMagickNumberThreads Unexecuted instantiation: property.c:GetMagickNumberThreads Unexecuted instantiation: profile.c:GetMagickNumberThreads Unexecuted instantiation: quantize.c:GetMagickNumberThreads Unexecuted instantiation: quantum.c:GetMagickNumberThreads Unexecuted instantiation: random.c:GetMagickNumberThreads Unexecuted instantiation: resize.c:GetMagickNumberThreads Unexecuted instantiation: resource.c:GetMagickNumberThreads Unexecuted instantiation: segment.c:GetMagickNumberThreads Unexecuted instantiation: semaphore.c:GetMagickNumberThreads Unexecuted instantiation: shear.c:GetMagickNumberThreads Unexecuted instantiation: static.c:GetMagickNumberThreads Unexecuted instantiation: statistic.c:GetMagickNumberThreads Unexecuted instantiation: stream.c:GetMagickNumberThreads Unexecuted instantiation: transform.c:GetMagickNumberThreads Unexecuted instantiation: threshold.c:GetMagickNumberThreads Unexecuted instantiation: visual-effects.c:GetMagickNumberThreads Unexecuted instantiation: vision.c:GetMagickNumberThreads Unexecuted instantiation: ashlar.c:GetMagickNumberThreads Unexecuted instantiation: cube.c:GetMagickNumberThreads Unexecuted instantiation: cut.c:GetMagickNumberThreads Unexecuted instantiation: dcm.c:GetMagickNumberThreads Unexecuted instantiation: dpx.c:GetMagickNumberThreads Unexecuted instantiation: fits.c:GetMagickNumberThreads Unexecuted instantiation: ftxt.c:GetMagickNumberThreads Unexecuted instantiation: hald.c:GetMagickNumberThreads Unexecuted instantiation: json.c:GetMagickNumberThreads Unexecuted instantiation: mat.c:GetMagickNumberThreads Unexecuted instantiation: msl.c:GetMagickNumberThreads Unexecuted instantiation: pdf.c:GetMagickNumberThreads Unexecuted instantiation: plasma.c:GetMagickNumberThreads Unexecuted instantiation: pnm.c:GetMagickNumberThreads Unexecuted instantiation: ps2.c:GetMagickNumberThreads Unexecuted instantiation: ps3.c:GetMagickNumberThreads Unexecuted instantiation: ps.c:GetMagickNumberThreads Unexecuted instantiation: psd.c:GetMagickNumberThreads Unexecuted instantiation: sgi.c:GetMagickNumberThreads Unexecuted instantiation: sixel.c:GetMagickNumberThreads Unexecuted instantiation: svg.c:GetMagickNumberThreads Unexecuted instantiation: tga.c:GetMagickNumberThreads Unexecuted instantiation: txt.c:GetMagickNumberThreads Unexecuted instantiation: viff.c:GetMagickNumberThreads Unexecuted instantiation: vips.c:GetMagickNumberThreads Unexecuted instantiation: xpm.c:GetMagickNumberThreads Unexecuted instantiation: yaml.c:GetMagickNumberThreads Unexecuted instantiation: jpeg.c:GetMagickNumberThreads Unexecuted instantiation: png.c:GetMagickNumberThreads Unexecuted instantiation: tiff.c:GetMagickNumberThreads Unexecuted instantiation: thread.c:GetMagickNumberThreads |
76 | | |
77 | | static inline MagickThreadType GetMagickThreadId(void) |
78 | 213M | { |
79 | 213M | #if defined(MAGICKCORE_THREAD_SUPPORT) |
80 | 213M | return(pthread_self()); |
81 | | #elif defined(MAGICKCORE_WINDOWS_SUPPORT) |
82 | | return(GetCurrentThreadId()); |
83 | | #else |
84 | | return(getpid()); |
85 | | #endif |
86 | 213M | } Unexecuted instantiation: annotate.c:GetMagickThreadId Unexecuted instantiation: attribute.c:GetMagickThreadId cache.c:GetMagickThreadId Line | Count | Source | 78 | 3.52M | { | 79 | 3.52M | #if defined(MAGICKCORE_THREAD_SUPPORT) | 80 | 3.52M | return(pthread_self()); | 81 | | #elif defined(MAGICKCORE_WINDOWS_SUPPORT) | 82 | | return(GetCurrentThreadId()); | 83 | | #else | 84 | | return(getpid()); | 85 | | #endif | 86 | 3.52M | } |
Unexecuted instantiation: cache-view.c:GetMagickThreadId Unexecuted instantiation: channel.c:GetMagickThreadId Unexecuted instantiation: colormap.c:GetMagickThreadId Unexecuted instantiation: colorspace.c:GetMagickThreadId Unexecuted instantiation: compare.c:GetMagickThreadId Unexecuted instantiation: composite.c:GetMagickThreadId Unexecuted instantiation: constitute.c:GetMagickThreadId Unexecuted instantiation: decorate.c:GetMagickThreadId Unexecuted instantiation: display.c:GetMagickThreadId Unexecuted instantiation: distort.c:GetMagickThreadId Unexecuted instantiation: distribute-cache.c:GetMagickThreadId Unexecuted instantiation: draw.c:GetMagickThreadId Unexecuted instantiation: effect.c:GetMagickThreadId Unexecuted instantiation: enhance.c:GetMagickThreadId Unexecuted instantiation: feature.c:GetMagickThreadId Unexecuted instantiation: fourier.c:GetMagickThreadId Unexecuted instantiation: fx.c:GetMagickThreadId Unexecuted instantiation: image.c:GetMagickThreadId Unexecuted instantiation: layer.c:GetMagickThreadId Unexecuted instantiation: log.c:GetMagickThreadId Unexecuted instantiation: magic.c:GetMagickThreadId Unexecuted instantiation: magick.c:GetMagickThreadId Unexecuted instantiation: coder.c:GetMagickThreadId Unexecuted instantiation: matrix.c:GetMagickThreadId Unexecuted instantiation: morphology.c:GetMagickThreadId Unexecuted instantiation: opencl.c:GetMagickThreadId Unexecuted instantiation: paint.c:GetMagickThreadId Unexecuted instantiation: pixel.c:GetMagickThreadId Unexecuted instantiation: policy.c:GetMagickThreadId Unexecuted instantiation: prepress.c:GetMagickThreadId Unexecuted instantiation: property.c:GetMagickThreadId Unexecuted instantiation: profile.c:GetMagickThreadId Unexecuted instantiation: quantize.c:GetMagickThreadId Unexecuted instantiation: quantum.c:GetMagickThreadId Unexecuted instantiation: random.c:GetMagickThreadId Unexecuted instantiation: resize.c:GetMagickThreadId Unexecuted instantiation: resource.c:GetMagickThreadId Unexecuted instantiation: segment.c:GetMagickThreadId semaphore.c:GetMagickThreadId Line | Count | Source | 78 | 210M | { | 79 | 210M | #if defined(MAGICKCORE_THREAD_SUPPORT) | 80 | 210M | return(pthread_self()); | 81 | | #elif defined(MAGICKCORE_WINDOWS_SUPPORT) | 82 | | return(GetCurrentThreadId()); | 83 | | #else | 84 | | return(getpid()); | 85 | | #endif | 86 | 210M | } |
Unexecuted instantiation: shear.c:GetMagickThreadId Unexecuted instantiation: static.c:GetMagickThreadId Unexecuted instantiation: statistic.c:GetMagickThreadId Unexecuted instantiation: stream.c:GetMagickThreadId Unexecuted instantiation: transform.c:GetMagickThreadId Unexecuted instantiation: threshold.c:GetMagickThreadId Unexecuted instantiation: visual-effects.c:GetMagickThreadId Unexecuted instantiation: vision.c:GetMagickThreadId Unexecuted instantiation: ashlar.c:GetMagickThreadId Unexecuted instantiation: cube.c:GetMagickThreadId Unexecuted instantiation: cut.c:GetMagickThreadId Unexecuted instantiation: dcm.c:GetMagickThreadId Unexecuted instantiation: dpx.c:GetMagickThreadId Unexecuted instantiation: fits.c:GetMagickThreadId Unexecuted instantiation: ftxt.c:GetMagickThreadId Unexecuted instantiation: hald.c:GetMagickThreadId Unexecuted instantiation: json.c:GetMagickThreadId Unexecuted instantiation: mat.c:GetMagickThreadId Unexecuted instantiation: msl.c:GetMagickThreadId Unexecuted instantiation: pdf.c:GetMagickThreadId Unexecuted instantiation: plasma.c:GetMagickThreadId Unexecuted instantiation: pnm.c:GetMagickThreadId Unexecuted instantiation: ps2.c:GetMagickThreadId Unexecuted instantiation: ps3.c:GetMagickThreadId Unexecuted instantiation: ps.c:GetMagickThreadId Unexecuted instantiation: psd.c:GetMagickThreadId Unexecuted instantiation: sgi.c:GetMagickThreadId Unexecuted instantiation: sixel.c:GetMagickThreadId Unexecuted instantiation: svg.c:GetMagickThreadId Unexecuted instantiation: tga.c:GetMagickThreadId Unexecuted instantiation: txt.c:GetMagickThreadId Unexecuted instantiation: viff.c:GetMagickThreadId Unexecuted instantiation: vips.c:GetMagickThreadId Unexecuted instantiation: xpm.c:GetMagickThreadId Unexecuted instantiation: yaml.c:GetMagickThreadId Unexecuted instantiation: jpeg.c:GetMagickThreadId Unexecuted instantiation: png.c:GetMagickThreadId Unexecuted instantiation: tiff.c:GetMagickThreadId Unexecuted instantiation: thread.c:GetMagickThreadId |
87 | | |
88 | | static inline void GetMagickThreadFilename(const char *filename, |
89 | | char *thread_filename) |
90 | 0 | { |
91 | 0 | MagickThreadType |
92 | 0 | id; |
93 | 0 |
|
94 | 0 | char |
95 | 0 | thread_id[2*sizeof(id)+1]; |
96 | 0 |
|
97 | 0 | ssize_t |
98 | 0 | i; |
99 | 0 |
|
100 | 0 | unsigned char |
101 | 0 | bytes[sizeof(id)]; |
102 | 0 |
|
103 | 0 | id=GetMagickThreadId(); |
104 | 0 | (void) memcpy(bytes,&id,sizeof(id)); |
105 | 0 | for (i=0; i < (ssize_t) sizeof(bytes); i++) |
106 | 0 | (void) FormatLocaleString(thread_id+2*i,MagickPathExtent,"%02x",bytes[i]); |
107 | 0 | thread_id[sizeof(thread_id)-1]='\0'; |
108 | 0 | (void) FormatLocaleString(thread_filename,MagickPathExtent,"%s|%s",thread_id, |
109 | 0 | filename); |
110 | 0 | } Unexecuted instantiation: annotate.c:GetMagickThreadFilename Unexecuted instantiation: attribute.c:GetMagickThreadFilename Unexecuted instantiation: cache.c:GetMagickThreadFilename Unexecuted instantiation: cache-view.c:GetMagickThreadFilename Unexecuted instantiation: channel.c:GetMagickThreadFilename Unexecuted instantiation: colormap.c:GetMagickThreadFilename Unexecuted instantiation: colorspace.c:GetMagickThreadFilename Unexecuted instantiation: compare.c:GetMagickThreadFilename Unexecuted instantiation: composite.c:GetMagickThreadFilename Unexecuted instantiation: constitute.c:GetMagickThreadFilename Unexecuted instantiation: decorate.c:GetMagickThreadFilename Unexecuted instantiation: display.c:GetMagickThreadFilename Unexecuted instantiation: distort.c:GetMagickThreadFilename Unexecuted instantiation: distribute-cache.c:GetMagickThreadFilename Unexecuted instantiation: draw.c:GetMagickThreadFilename Unexecuted instantiation: effect.c:GetMagickThreadFilename Unexecuted instantiation: enhance.c:GetMagickThreadFilename Unexecuted instantiation: feature.c:GetMagickThreadFilename Unexecuted instantiation: fourier.c:GetMagickThreadFilename Unexecuted instantiation: fx.c:GetMagickThreadFilename Unexecuted instantiation: image.c:GetMagickThreadFilename Unexecuted instantiation: layer.c:GetMagickThreadFilename Unexecuted instantiation: log.c:GetMagickThreadFilename Unexecuted instantiation: magic.c:GetMagickThreadFilename Unexecuted instantiation: magick.c:GetMagickThreadFilename Unexecuted instantiation: coder.c:GetMagickThreadFilename Unexecuted instantiation: matrix.c:GetMagickThreadFilename Unexecuted instantiation: morphology.c:GetMagickThreadFilename Unexecuted instantiation: opencl.c:GetMagickThreadFilename Unexecuted instantiation: paint.c:GetMagickThreadFilename Unexecuted instantiation: pixel.c:GetMagickThreadFilename Unexecuted instantiation: policy.c:GetMagickThreadFilename Unexecuted instantiation: prepress.c:GetMagickThreadFilename Unexecuted instantiation: property.c:GetMagickThreadFilename Unexecuted instantiation: profile.c:GetMagickThreadFilename Unexecuted instantiation: quantize.c:GetMagickThreadFilename Unexecuted instantiation: quantum.c:GetMagickThreadFilename Unexecuted instantiation: random.c:GetMagickThreadFilename Unexecuted instantiation: resize.c:GetMagickThreadFilename Unexecuted instantiation: resource.c:GetMagickThreadFilename Unexecuted instantiation: segment.c:GetMagickThreadFilename Unexecuted instantiation: semaphore.c:GetMagickThreadFilename Unexecuted instantiation: shear.c:GetMagickThreadFilename Unexecuted instantiation: static.c:GetMagickThreadFilename Unexecuted instantiation: statistic.c:GetMagickThreadFilename Unexecuted instantiation: stream.c:GetMagickThreadFilename Unexecuted instantiation: transform.c:GetMagickThreadFilename Unexecuted instantiation: threshold.c:GetMagickThreadFilename Unexecuted instantiation: visual-effects.c:GetMagickThreadFilename Unexecuted instantiation: vision.c:GetMagickThreadFilename Unexecuted instantiation: ashlar.c:GetMagickThreadFilename Unexecuted instantiation: cube.c:GetMagickThreadFilename Unexecuted instantiation: cut.c:GetMagickThreadFilename Unexecuted instantiation: dcm.c:GetMagickThreadFilename Unexecuted instantiation: dpx.c:GetMagickThreadFilename Unexecuted instantiation: fits.c:GetMagickThreadFilename Unexecuted instantiation: ftxt.c:GetMagickThreadFilename Unexecuted instantiation: hald.c:GetMagickThreadFilename Unexecuted instantiation: json.c:GetMagickThreadFilename Unexecuted instantiation: mat.c:GetMagickThreadFilename Unexecuted instantiation: msl.c:GetMagickThreadFilename Unexecuted instantiation: pdf.c:GetMagickThreadFilename Unexecuted instantiation: plasma.c:GetMagickThreadFilename Unexecuted instantiation: pnm.c:GetMagickThreadFilename Unexecuted instantiation: ps2.c:GetMagickThreadFilename Unexecuted instantiation: ps3.c:GetMagickThreadFilename Unexecuted instantiation: ps.c:GetMagickThreadFilename Unexecuted instantiation: psd.c:GetMagickThreadFilename Unexecuted instantiation: sgi.c:GetMagickThreadFilename Unexecuted instantiation: sixel.c:GetMagickThreadFilename Unexecuted instantiation: svg.c:GetMagickThreadFilename Unexecuted instantiation: tga.c:GetMagickThreadFilename Unexecuted instantiation: txt.c:GetMagickThreadFilename Unexecuted instantiation: viff.c:GetMagickThreadFilename Unexecuted instantiation: vips.c:GetMagickThreadFilename Unexecuted instantiation: xpm.c:GetMagickThreadFilename Unexecuted instantiation: yaml.c:GetMagickThreadFilename Unexecuted instantiation: jpeg.c:GetMagickThreadFilename Unexecuted instantiation: png.c:GetMagickThreadFilename Unexecuted instantiation: tiff.c:GetMagickThreadFilename Unexecuted instantiation: thread.c:GetMagickThreadFilename |
111 | | |
112 | | static inline size_t GetMagickThreadSignature(void) |
113 | 0 | { |
114 | 0 | #if defined(MAGICKCORE_THREAD_SUPPORT) |
115 | 0 | { |
116 | 0 | union |
117 | 0 | { |
118 | 0 | pthread_t |
119 | 0 | id; |
120 | |
|
121 | 0 | size_t |
122 | 0 | signature; |
123 | 0 | } magick_thread; |
124 | |
|
125 | 0 | magick_thread.signature=0UL; |
126 | 0 | magick_thread.id=pthread_self(); |
127 | 0 | return(magick_thread.signature); |
128 | 0 | } |
129 | | #elif defined(MAGICKCORE_WINDOWS_SUPPORT) |
130 | | return((size_t) GetCurrentThreadId()); |
131 | | #else |
132 | | return((size_t) getpid()); |
133 | | #endif |
134 | 0 | } Unexecuted instantiation: annotate.c:GetMagickThreadSignature Unexecuted instantiation: attribute.c:GetMagickThreadSignature Unexecuted instantiation: cache.c:GetMagickThreadSignature Unexecuted instantiation: cache-view.c:GetMagickThreadSignature Unexecuted instantiation: channel.c:GetMagickThreadSignature Unexecuted instantiation: colormap.c:GetMagickThreadSignature Unexecuted instantiation: colorspace.c:GetMagickThreadSignature Unexecuted instantiation: compare.c:GetMagickThreadSignature Unexecuted instantiation: composite.c:GetMagickThreadSignature Unexecuted instantiation: constitute.c:GetMagickThreadSignature Unexecuted instantiation: decorate.c:GetMagickThreadSignature Unexecuted instantiation: display.c:GetMagickThreadSignature Unexecuted instantiation: distort.c:GetMagickThreadSignature Unexecuted instantiation: distribute-cache.c:GetMagickThreadSignature Unexecuted instantiation: draw.c:GetMagickThreadSignature Unexecuted instantiation: effect.c:GetMagickThreadSignature Unexecuted instantiation: enhance.c:GetMagickThreadSignature Unexecuted instantiation: feature.c:GetMagickThreadSignature Unexecuted instantiation: fourier.c:GetMagickThreadSignature Unexecuted instantiation: fx.c:GetMagickThreadSignature Unexecuted instantiation: image.c:GetMagickThreadSignature Unexecuted instantiation: layer.c:GetMagickThreadSignature Unexecuted instantiation: log.c:GetMagickThreadSignature Unexecuted instantiation: magic.c:GetMagickThreadSignature Unexecuted instantiation: magick.c:GetMagickThreadSignature Unexecuted instantiation: coder.c:GetMagickThreadSignature Unexecuted instantiation: matrix.c:GetMagickThreadSignature Unexecuted instantiation: morphology.c:GetMagickThreadSignature Unexecuted instantiation: opencl.c:GetMagickThreadSignature Unexecuted instantiation: paint.c:GetMagickThreadSignature Unexecuted instantiation: pixel.c:GetMagickThreadSignature Unexecuted instantiation: policy.c:GetMagickThreadSignature Unexecuted instantiation: prepress.c:GetMagickThreadSignature Unexecuted instantiation: property.c:GetMagickThreadSignature Unexecuted instantiation: profile.c:GetMagickThreadSignature Unexecuted instantiation: quantize.c:GetMagickThreadSignature Unexecuted instantiation: quantum.c:GetMagickThreadSignature Unexecuted instantiation: random.c:GetMagickThreadSignature Unexecuted instantiation: resize.c:GetMagickThreadSignature Unexecuted instantiation: resource.c:GetMagickThreadSignature Unexecuted instantiation: segment.c:GetMagickThreadSignature Unexecuted instantiation: semaphore.c:GetMagickThreadSignature Unexecuted instantiation: shear.c:GetMagickThreadSignature Unexecuted instantiation: static.c:GetMagickThreadSignature Unexecuted instantiation: statistic.c:GetMagickThreadSignature Unexecuted instantiation: stream.c:GetMagickThreadSignature Unexecuted instantiation: transform.c:GetMagickThreadSignature Unexecuted instantiation: threshold.c:GetMagickThreadSignature Unexecuted instantiation: visual-effects.c:GetMagickThreadSignature Unexecuted instantiation: vision.c:GetMagickThreadSignature Unexecuted instantiation: ashlar.c:GetMagickThreadSignature Unexecuted instantiation: cube.c:GetMagickThreadSignature Unexecuted instantiation: cut.c:GetMagickThreadSignature Unexecuted instantiation: dcm.c:GetMagickThreadSignature Unexecuted instantiation: dpx.c:GetMagickThreadSignature Unexecuted instantiation: fits.c:GetMagickThreadSignature Unexecuted instantiation: ftxt.c:GetMagickThreadSignature Unexecuted instantiation: hald.c:GetMagickThreadSignature Unexecuted instantiation: json.c:GetMagickThreadSignature Unexecuted instantiation: mat.c:GetMagickThreadSignature Unexecuted instantiation: msl.c:GetMagickThreadSignature Unexecuted instantiation: pdf.c:GetMagickThreadSignature Unexecuted instantiation: plasma.c:GetMagickThreadSignature Unexecuted instantiation: pnm.c:GetMagickThreadSignature Unexecuted instantiation: ps2.c:GetMagickThreadSignature Unexecuted instantiation: ps3.c:GetMagickThreadSignature Unexecuted instantiation: ps.c:GetMagickThreadSignature Unexecuted instantiation: psd.c:GetMagickThreadSignature Unexecuted instantiation: sgi.c:GetMagickThreadSignature Unexecuted instantiation: sixel.c:GetMagickThreadSignature Unexecuted instantiation: svg.c:GetMagickThreadSignature Unexecuted instantiation: tga.c:GetMagickThreadSignature Unexecuted instantiation: txt.c:GetMagickThreadSignature Unexecuted instantiation: viff.c:GetMagickThreadSignature Unexecuted instantiation: vips.c:GetMagickThreadSignature Unexecuted instantiation: xpm.c:GetMagickThreadSignature Unexecuted instantiation: yaml.c:GetMagickThreadSignature Unexecuted instantiation: jpeg.c:GetMagickThreadSignature Unexecuted instantiation: png.c:GetMagickThreadSignature Unexecuted instantiation: tiff.c:GetMagickThreadSignature Unexecuted instantiation: thread.c:GetMagickThreadSignature |
135 | | |
136 | | static inline MagickBooleanType IsMagickThreadEqual(const MagickThreadType id) |
137 | 0 | { |
138 | 0 | #if defined(MAGICKCORE_THREAD_SUPPORT) |
139 | 0 | if (pthread_equal(id,pthread_self()) != 0) |
140 | 0 | return(MagickTrue); |
141 | 0 | #elif defined(MAGICKCORE_WINDOWS_SUPPORT) |
142 | 0 | if (id == GetCurrentThreadId()) |
143 | 0 | return(MagickTrue); |
144 | 0 | #else |
145 | 0 | if (id == getpid()) |
146 | 0 | return(MagickTrue); |
147 | 0 | #endif |
148 | 0 | return(MagickFalse); |
149 | 0 | } Unexecuted instantiation: annotate.c:IsMagickThreadEqual Unexecuted instantiation: attribute.c:IsMagickThreadEqual Unexecuted instantiation: cache.c:IsMagickThreadEqual Unexecuted instantiation: cache-view.c:IsMagickThreadEqual Unexecuted instantiation: channel.c:IsMagickThreadEqual Unexecuted instantiation: colormap.c:IsMagickThreadEqual Unexecuted instantiation: colorspace.c:IsMagickThreadEqual Unexecuted instantiation: compare.c:IsMagickThreadEqual Unexecuted instantiation: composite.c:IsMagickThreadEqual Unexecuted instantiation: constitute.c:IsMagickThreadEqual Unexecuted instantiation: decorate.c:IsMagickThreadEqual Unexecuted instantiation: display.c:IsMagickThreadEqual Unexecuted instantiation: distort.c:IsMagickThreadEqual Unexecuted instantiation: distribute-cache.c:IsMagickThreadEqual Unexecuted instantiation: draw.c:IsMagickThreadEqual Unexecuted instantiation: effect.c:IsMagickThreadEqual Unexecuted instantiation: enhance.c:IsMagickThreadEqual Unexecuted instantiation: feature.c:IsMagickThreadEqual Unexecuted instantiation: fourier.c:IsMagickThreadEqual Unexecuted instantiation: fx.c:IsMagickThreadEqual Unexecuted instantiation: image.c:IsMagickThreadEqual Unexecuted instantiation: layer.c:IsMagickThreadEqual Unexecuted instantiation: log.c:IsMagickThreadEqual Unexecuted instantiation: magic.c:IsMagickThreadEqual Unexecuted instantiation: magick.c:IsMagickThreadEqual Unexecuted instantiation: coder.c:IsMagickThreadEqual Unexecuted instantiation: matrix.c:IsMagickThreadEqual Unexecuted instantiation: morphology.c:IsMagickThreadEqual Unexecuted instantiation: opencl.c:IsMagickThreadEqual Unexecuted instantiation: paint.c:IsMagickThreadEqual Unexecuted instantiation: pixel.c:IsMagickThreadEqual Unexecuted instantiation: policy.c:IsMagickThreadEqual Unexecuted instantiation: prepress.c:IsMagickThreadEqual Unexecuted instantiation: property.c:IsMagickThreadEqual Unexecuted instantiation: profile.c:IsMagickThreadEqual Unexecuted instantiation: quantize.c:IsMagickThreadEqual Unexecuted instantiation: quantum.c:IsMagickThreadEqual Unexecuted instantiation: random.c:IsMagickThreadEqual Unexecuted instantiation: resize.c:IsMagickThreadEqual Unexecuted instantiation: resource.c:IsMagickThreadEqual Unexecuted instantiation: segment.c:IsMagickThreadEqual Unexecuted instantiation: semaphore.c:IsMagickThreadEqual Unexecuted instantiation: shear.c:IsMagickThreadEqual Unexecuted instantiation: static.c:IsMagickThreadEqual Unexecuted instantiation: statistic.c:IsMagickThreadEqual Unexecuted instantiation: stream.c:IsMagickThreadEqual Unexecuted instantiation: transform.c:IsMagickThreadEqual Unexecuted instantiation: threshold.c:IsMagickThreadEqual Unexecuted instantiation: visual-effects.c:IsMagickThreadEqual Unexecuted instantiation: vision.c:IsMagickThreadEqual Unexecuted instantiation: ashlar.c:IsMagickThreadEqual Unexecuted instantiation: cube.c:IsMagickThreadEqual Unexecuted instantiation: cut.c:IsMagickThreadEqual Unexecuted instantiation: dcm.c:IsMagickThreadEqual Unexecuted instantiation: dpx.c:IsMagickThreadEqual Unexecuted instantiation: fits.c:IsMagickThreadEqual Unexecuted instantiation: ftxt.c:IsMagickThreadEqual Unexecuted instantiation: hald.c:IsMagickThreadEqual Unexecuted instantiation: json.c:IsMagickThreadEqual Unexecuted instantiation: mat.c:IsMagickThreadEqual Unexecuted instantiation: msl.c:IsMagickThreadEqual Unexecuted instantiation: pdf.c:IsMagickThreadEqual Unexecuted instantiation: plasma.c:IsMagickThreadEqual Unexecuted instantiation: pnm.c:IsMagickThreadEqual Unexecuted instantiation: ps2.c:IsMagickThreadEqual Unexecuted instantiation: ps3.c:IsMagickThreadEqual Unexecuted instantiation: ps.c:IsMagickThreadEqual Unexecuted instantiation: psd.c:IsMagickThreadEqual Unexecuted instantiation: sgi.c:IsMagickThreadEqual Unexecuted instantiation: sixel.c:IsMagickThreadEqual Unexecuted instantiation: svg.c:IsMagickThreadEqual Unexecuted instantiation: tga.c:IsMagickThreadEqual Unexecuted instantiation: txt.c:IsMagickThreadEqual Unexecuted instantiation: viff.c:IsMagickThreadEqual Unexecuted instantiation: vips.c:IsMagickThreadEqual Unexecuted instantiation: xpm.c:IsMagickThreadEqual Unexecuted instantiation: yaml.c:IsMagickThreadEqual Unexecuted instantiation: jpeg.c:IsMagickThreadEqual Unexecuted instantiation: png.c:IsMagickThreadEqual Unexecuted instantiation: tiff.c:IsMagickThreadEqual Unexecuted instantiation: thread.c:IsMagickThreadEqual |
150 | | |
151 | | /* |
152 | | Lightweight OpenMP methods. |
153 | | */ |
154 | | static inline size_t GetOpenMPMaximumThreads(void) |
155 | 11.3M | { |
156 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) |
157 | | return((size_t) omp_get_max_threads()); |
158 | | #else |
159 | 11.3M | return(1); |
160 | 11.3M | #endif |
161 | 11.3M | } Unexecuted instantiation: annotate.c:GetOpenMPMaximumThreads Unexecuted instantiation: attribute.c:GetOpenMPMaximumThreads cache.c:GetOpenMPMaximumThreads Line | Count | Source | 155 | 6.58M | { | 156 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 157 | | return((size_t) omp_get_max_threads()); | 158 | | #else | 159 | 6.58M | return(1); | 160 | 6.58M | #endif | 161 | 6.58M | } |
cache-view.c:GetOpenMPMaximumThreads Line | Count | Source | 155 | 4.73M | { | 156 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 157 | | return((size_t) omp_get_max_threads()); | 158 | | #else | 159 | 4.73M | return(1); | 160 | 4.73M | #endif | 161 | 4.73M | } |
Unexecuted instantiation: channel.c:GetOpenMPMaximumThreads Unexecuted instantiation: colormap.c:GetOpenMPMaximumThreads Unexecuted instantiation: colorspace.c:GetOpenMPMaximumThreads Unexecuted instantiation: compare.c:GetOpenMPMaximumThreads Unexecuted instantiation: composite.c:GetOpenMPMaximumThreads Unexecuted instantiation: constitute.c:GetOpenMPMaximumThreads Unexecuted instantiation: decorate.c:GetOpenMPMaximumThreads Unexecuted instantiation: display.c:GetOpenMPMaximumThreads Unexecuted instantiation: distort.c:GetOpenMPMaximumThreads Unexecuted instantiation: distribute-cache.c:GetOpenMPMaximumThreads Unexecuted instantiation: draw.c:GetOpenMPMaximumThreads Unexecuted instantiation: effect.c:GetOpenMPMaximumThreads Unexecuted instantiation: enhance.c:GetOpenMPMaximumThreads Unexecuted instantiation: feature.c:GetOpenMPMaximumThreads Unexecuted instantiation: fourier.c:GetOpenMPMaximumThreads Unexecuted instantiation: fx.c:GetOpenMPMaximumThreads Unexecuted instantiation: image.c:GetOpenMPMaximumThreads Unexecuted instantiation: layer.c:GetOpenMPMaximumThreads Unexecuted instantiation: log.c:GetOpenMPMaximumThreads Unexecuted instantiation: magic.c:GetOpenMPMaximumThreads Unexecuted instantiation: magick.c:GetOpenMPMaximumThreads Unexecuted instantiation: coder.c:GetOpenMPMaximumThreads Unexecuted instantiation: matrix.c:GetOpenMPMaximumThreads Unexecuted instantiation: morphology.c:GetOpenMPMaximumThreads Unexecuted instantiation: opencl.c:GetOpenMPMaximumThreads Unexecuted instantiation: paint.c:GetOpenMPMaximumThreads Unexecuted instantiation: pixel.c:GetOpenMPMaximumThreads Unexecuted instantiation: policy.c:GetOpenMPMaximumThreads Unexecuted instantiation: prepress.c:GetOpenMPMaximumThreads Unexecuted instantiation: property.c:GetOpenMPMaximumThreads Unexecuted instantiation: profile.c:GetOpenMPMaximumThreads Unexecuted instantiation: quantize.c:GetOpenMPMaximumThreads Unexecuted instantiation: quantum.c:GetOpenMPMaximumThreads Unexecuted instantiation: random.c:GetOpenMPMaximumThreads Unexecuted instantiation: resize.c:GetOpenMPMaximumThreads resource.c:GetOpenMPMaximumThreads Line | Count | Source | 155 | 590 | { | 156 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 157 | | return((size_t) omp_get_max_threads()); | 158 | | #else | 159 | 590 | return(1); | 160 | 590 | #endif | 161 | 590 | } |
Unexecuted instantiation: segment.c:GetOpenMPMaximumThreads Unexecuted instantiation: semaphore.c:GetOpenMPMaximumThreads Unexecuted instantiation: shear.c:GetOpenMPMaximumThreads Unexecuted instantiation: static.c:GetOpenMPMaximumThreads Unexecuted instantiation: statistic.c:GetOpenMPMaximumThreads Unexecuted instantiation: stream.c:GetOpenMPMaximumThreads Unexecuted instantiation: transform.c:GetOpenMPMaximumThreads Unexecuted instantiation: threshold.c:GetOpenMPMaximumThreads Unexecuted instantiation: visual-effects.c:GetOpenMPMaximumThreads Unexecuted instantiation: vision.c:GetOpenMPMaximumThreads Unexecuted instantiation: ashlar.c:GetOpenMPMaximumThreads Unexecuted instantiation: cube.c:GetOpenMPMaximumThreads Unexecuted instantiation: cut.c:GetOpenMPMaximumThreads Unexecuted instantiation: dcm.c:GetOpenMPMaximumThreads Unexecuted instantiation: dpx.c:GetOpenMPMaximumThreads Unexecuted instantiation: fits.c:GetOpenMPMaximumThreads Unexecuted instantiation: ftxt.c:GetOpenMPMaximumThreads Unexecuted instantiation: hald.c:GetOpenMPMaximumThreads Unexecuted instantiation: json.c:GetOpenMPMaximumThreads Unexecuted instantiation: mat.c:GetOpenMPMaximumThreads Unexecuted instantiation: msl.c:GetOpenMPMaximumThreads Unexecuted instantiation: pdf.c:GetOpenMPMaximumThreads Unexecuted instantiation: plasma.c:GetOpenMPMaximumThreads Unexecuted instantiation: pnm.c:GetOpenMPMaximumThreads Unexecuted instantiation: ps2.c:GetOpenMPMaximumThreads Unexecuted instantiation: ps3.c:GetOpenMPMaximumThreads Unexecuted instantiation: ps.c:GetOpenMPMaximumThreads Unexecuted instantiation: psd.c:GetOpenMPMaximumThreads Unexecuted instantiation: sgi.c:GetOpenMPMaximumThreads Unexecuted instantiation: sixel.c:GetOpenMPMaximumThreads Unexecuted instantiation: svg.c:GetOpenMPMaximumThreads Unexecuted instantiation: tga.c:GetOpenMPMaximumThreads Unexecuted instantiation: txt.c:GetOpenMPMaximumThreads Unexecuted instantiation: viff.c:GetOpenMPMaximumThreads Unexecuted instantiation: vips.c:GetOpenMPMaximumThreads Unexecuted instantiation: xpm.c:GetOpenMPMaximumThreads Unexecuted instantiation: yaml.c:GetOpenMPMaximumThreads Unexecuted instantiation: jpeg.c:GetOpenMPMaximumThreads Unexecuted instantiation: png.c:GetOpenMPMaximumThreads Unexecuted instantiation: tiff.c:GetOpenMPMaximumThreads Unexecuted instantiation: thread.c:GetOpenMPMaximumThreads |
162 | | |
163 | | static inline int GetOpenMPThreadId(void) |
164 | 1.22G | { |
165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) |
166 | | return(omp_get_thread_num()); |
167 | | #else |
168 | 1.22G | return(0); |
169 | 1.22G | #endif |
170 | 1.22G | } Unexecuted instantiation: annotate.c:GetOpenMPThreadId attribute.c:GetOpenMPThreadId Line | Count | Source | 164 | 73.3k | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 73.3k | return(0); | 169 | 73.3k | #endif | 170 | 73.3k | } |
cache.c:GetOpenMPThreadId Line | Count | Source | 164 | 301M | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 301M | return(0); | 169 | 301M | #endif | 170 | 301M | } |
cache-view.c:GetOpenMPThreadId Line | Count | Source | 164 | 911M | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 911M | return(0); | 169 | 911M | #endif | 170 | 911M | } |
Unexecuted instantiation: channel.c:GetOpenMPThreadId Unexecuted instantiation: colormap.c:GetOpenMPThreadId Unexecuted instantiation: colorspace.c:GetOpenMPThreadId Unexecuted instantiation: compare.c:GetOpenMPThreadId Unexecuted instantiation: composite.c:GetOpenMPThreadId Unexecuted instantiation: constitute.c:GetOpenMPThreadId Unexecuted instantiation: decorate.c:GetOpenMPThreadId Unexecuted instantiation: display.c:GetOpenMPThreadId Unexecuted instantiation: distort.c:GetOpenMPThreadId Unexecuted instantiation: distribute-cache.c:GetOpenMPThreadId Line | Count | Source | 164 | 170k | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 170k | return(0); | 169 | 170k | #endif | 170 | 170k | } |
Unexecuted instantiation: effect.c:GetOpenMPThreadId Unexecuted instantiation: enhance.c:GetOpenMPThreadId Unexecuted instantiation: feature.c:GetOpenMPThreadId Unexecuted instantiation: fourier.c:GetOpenMPThreadId Line | Count | Source | 164 | 8.03k | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 8.03k | return(0); | 169 | 8.03k | #endif | 170 | 8.03k | } |
Unexecuted instantiation: image.c:GetOpenMPThreadId Unexecuted instantiation: layer.c:GetOpenMPThreadId Unexecuted instantiation: log.c:GetOpenMPThreadId Unexecuted instantiation: magic.c:GetOpenMPThreadId Unexecuted instantiation: magick.c:GetOpenMPThreadId Unexecuted instantiation: coder.c:GetOpenMPThreadId Unexecuted instantiation: matrix.c:GetOpenMPThreadId Unexecuted instantiation: morphology.c:GetOpenMPThreadId Unexecuted instantiation: opencl.c:GetOpenMPThreadId Unexecuted instantiation: paint.c:GetOpenMPThreadId Unexecuted instantiation: pixel.c:GetOpenMPThreadId Unexecuted instantiation: policy.c:GetOpenMPThreadId Unexecuted instantiation: prepress.c:GetOpenMPThreadId Unexecuted instantiation: property.c:GetOpenMPThreadId profile.c:GetOpenMPThreadId Line | Count | Source | 164 | 5.26k | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 5.26k | return(0); | 169 | 5.26k | #endif | 170 | 5.26k | } |
Unexecuted instantiation: quantize.c:GetOpenMPThreadId quantum.c:GetOpenMPThreadId Line | Count | Source | 164 | 91.0k | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 91.0k | return(0); | 169 | 91.0k | #endif | 170 | 91.0k | } |
Unexecuted instantiation: random.c:GetOpenMPThreadId resize.c:GetOpenMPThreadId Line | Count | Source | 164 | 7.15M | { | 165 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) | 166 | | return(omp_get_thread_num()); | 167 | | #else | 168 | 7.15M | return(0); | 169 | 7.15M | #endif | 170 | 7.15M | } |
Unexecuted instantiation: resource.c:GetOpenMPThreadId Unexecuted instantiation: segment.c:GetOpenMPThreadId Unexecuted instantiation: semaphore.c:GetOpenMPThreadId Unexecuted instantiation: shear.c:GetOpenMPThreadId Unexecuted instantiation: static.c:GetOpenMPThreadId Unexecuted instantiation: statistic.c:GetOpenMPThreadId Unexecuted instantiation: stream.c:GetOpenMPThreadId Unexecuted instantiation: transform.c:GetOpenMPThreadId Unexecuted instantiation: threshold.c:GetOpenMPThreadId Unexecuted instantiation: visual-effects.c:GetOpenMPThreadId Unexecuted instantiation: vision.c:GetOpenMPThreadId Unexecuted instantiation: ashlar.c:GetOpenMPThreadId Unexecuted instantiation: cube.c:GetOpenMPThreadId Unexecuted instantiation: cut.c:GetOpenMPThreadId Unexecuted instantiation: dcm.c:GetOpenMPThreadId Unexecuted instantiation: dpx.c:GetOpenMPThreadId Unexecuted instantiation: fits.c:GetOpenMPThreadId Unexecuted instantiation: ftxt.c:GetOpenMPThreadId Unexecuted instantiation: hald.c:GetOpenMPThreadId Unexecuted instantiation: json.c:GetOpenMPThreadId Unexecuted instantiation: mat.c:GetOpenMPThreadId Unexecuted instantiation: msl.c:GetOpenMPThreadId Unexecuted instantiation: pdf.c:GetOpenMPThreadId Unexecuted instantiation: plasma.c:GetOpenMPThreadId Unexecuted instantiation: pnm.c:GetOpenMPThreadId Unexecuted instantiation: ps2.c:GetOpenMPThreadId Unexecuted instantiation: ps3.c:GetOpenMPThreadId Unexecuted instantiation: ps.c:GetOpenMPThreadId Unexecuted instantiation: psd.c:GetOpenMPThreadId Unexecuted instantiation: sgi.c:GetOpenMPThreadId Unexecuted instantiation: sixel.c:GetOpenMPThreadId Unexecuted instantiation: svg.c:GetOpenMPThreadId Unexecuted instantiation: tga.c:GetOpenMPThreadId Unexecuted instantiation: txt.c:GetOpenMPThreadId Unexecuted instantiation: viff.c:GetOpenMPThreadId Unexecuted instantiation: vips.c:GetOpenMPThreadId Unexecuted instantiation: xpm.c:GetOpenMPThreadId Unexecuted instantiation: yaml.c:GetOpenMPThreadId Unexecuted instantiation: jpeg.c:GetOpenMPThreadId Unexecuted instantiation: png.c:GetOpenMPThreadId Unexecuted instantiation: tiff.c:GetOpenMPThreadId Unexecuted instantiation: thread.c:GetOpenMPThreadId |
171 | | |
172 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) |
173 | | static inline void SetOpenMPMaximumThreads(const int threads) |
174 | | { |
175 | | omp_set_num_threads(threads); |
176 | | #else |
177 | | static inline void SetOpenMPMaximumThreads(const int magick_unused(threads)) |
178 | 0 | { |
179 | 0 | magick_unreferenced(threads); |
180 | 0 | #endif |
181 | 0 | } Unexecuted instantiation: annotate.c:SetOpenMPMaximumThreads Unexecuted instantiation: attribute.c:SetOpenMPMaximumThreads Unexecuted instantiation: cache.c:SetOpenMPMaximumThreads Unexecuted instantiation: cache-view.c:SetOpenMPMaximumThreads Unexecuted instantiation: channel.c:SetOpenMPMaximumThreads Unexecuted instantiation: colormap.c:SetOpenMPMaximumThreads Unexecuted instantiation: colorspace.c:SetOpenMPMaximumThreads Unexecuted instantiation: compare.c:SetOpenMPMaximumThreads Unexecuted instantiation: composite.c:SetOpenMPMaximumThreads Unexecuted instantiation: constitute.c:SetOpenMPMaximumThreads Unexecuted instantiation: decorate.c:SetOpenMPMaximumThreads Unexecuted instantiation: display.c:SetOpenMPMaximumThreads Unexecuted instantiation: distort.c:SetOpenMPMaximumThreads Unexecuted instantiation: distribute-cache.c:SetOpenMPMaximumThreads Unexecuted instantiation: draw.c:SetOpenMPMaximumThreads Unexecuted instantiation: effect.c:SetOpenMPMaximumThreads Unexecuted instantiation: enhance.c:SetOpenMPMaximumThreads Unexecuted instantiation: feature.c:SetOpenMPMaximumThreads Unexecuted instantiation: fourier.c:SetOpenMPMaximumThreads Unexecuted instantiation: fx.c:SetOpenMPMaximumThreads Unexecuted instantiation: image.c:SetOpenMPMaximumThreads Unexecuted instantiation: layer.c:SetOpenMPMaximumThreads Unexecuted instantiation: log.c:SetOpenMPMaximumThreads Unexecuted instantiation: magic.c:SetOpenMPMaximumThreads Unexecuted instantiation: magick.c:SetOpenMPMaximumThreads Unexecuted instantiation: coder.c:SetOpenMPMaximumThreads Unexecuted instantiation: matrix.c:SetOpenMPMaximumThreads Unexecuted instantiation: morphology.c:SetOpenMPMaximumThreads Unexecuted instantiation: opencl.c:SetOpenMPMaximumThreads Unexecuted instantiation: paint.c:SetOpenMPMaximumThreads Unexecuted instantiation: pixel.c:SetOpenMPMaximumThreads Unexecuted instantiation: policy.c:SetOpenMPMaximumThreads Unexecuted instantiation: prepress.c:SetOpenMPMaximumThreads Unexecuted instantiation: property.c:SetOpenMPMaximumThreads Unexecuted instantiation: profile.c:SetOpenMPMaximumThreads Unexecuted instantiation: quantize.c:SetOpenMPMaximumThreads Unexecuted instantiation: quantum.c:SetOpenMPMaximumThreads Unexecuted instantiation: random.c:SetOpenMPMaximumThreads Unexecuted instantiation: resize.c:SetOpenMPMaximumThreads Unexecuted instantiation: resource.c:SetOpenMPMaximumThreads Unexecuted instantiation: segment.c:SetOpenMPMaximumThreads Unexecuted instantiation: semaphore.c:SetOpenMPMaximumThreads Unexecuted instantiation: shear.c:SetOpenMPMaximumThreads Unexecuted instantiation: static.c:SetOpenMPMaximumThreads Unexecuted instantiation: statistic.c:SetOpenMPMaximumThreads Unexecuted instantiation: stream.c:SetOpenMPMaximumThreads Unexecuted instantiation: transform.c:SetOpenMPMaximumThreads Unexecuted instantiation: threshold.c:SetOpenMPMaximumThreads Unexecuted instantiation: visual-effects.c:SetOpenMPMaximumThreads Unexecuted instantiation: vision.c:SetOpenMPMaximumThreads Unexecuted instantiation: ashlar.c:SetOpenMPMaximumThreads Unexecuted instantiation: cube.c:SetOpenMPMaximumThreads Unexecuted instantiation: cut.c:SetOpenMPMaximumThreads Unexecuted instantiation: dcm.c:SetOpenMPMaximumThreads Unexecuted instantiation: dpx.c:SetOpenMPMaximumThreads Unexecuted instantiation: fits.c:SetOpenMPMaximumThreads Unexecuted instantiation: ftxt.c:SetOpenMPMaximumThreads Unexecuted instantiation: hald.c:SetOpenMPMaximumThreads Unexecuted instantiation: json.c:SetOpenMPMaximumThreads Unexecuted instantiation: mat.c:SetOpenMPMaximumThreads Unexecuted instantiation: msl.c:SetOpenMPMaximumThreads Unexecuted instantiation: pdf.c:SetOpenMPMaximumThreads Unexecuted instantiation: plasma.c:SetOpenMPMaximumThreads Unexecuted instantiation: pnm.c:SetOpenMPMaximumThreads Unexecuted instantiation: ps2.c:SetOpenMPMaximumThreads Unexecuted instantiation: ps3.c:SetOpenMPMaximumThreads Unexecuted instantiation: ps.c:SetOpenMPMaximumThreads Unexecuted instantiation: psd.c:SetOpenMPMaximumThreads Unexecuted instantiation: sgi.c:SetOpenMPMaximumThreads Unexecuted instantiation: sixel.c:SetOpenMPMaximumThreads Unexecuted instantiation: svg.c:SetOpenMPMaximumThreads Unexecuted instantiation: tga.c:SetOpenMPMaximumThreads Unexecuted instantiation: txt.c:SetOpenMPMaximumThreads Unexecuted instantiation: viff.c:SetOpenMPMaximumThreads Unexecuted instantiation: vips.c:SetOpenMPMaximumThreads Unexecuted instantiation: xpm.c:SetOpenMPMaximumThreads Unexecuted instantiation: yaml.c:SetOpenMPMaximumThreads Unexecuted instantiation: jpeg.c:SetOpenMPMaximumThreads Unexecuted instantiation: png.c:SetOpenMPMaximumThreads Unexecuted instantiation: tiff.c:SetOpenMPMaximumThreads Unexecuted instantiation: thread.c:SetOpenMPMaximumThreads |
182 | | |
183 | | #if defined(MAGICKCORE_OPENMP_SUPPORT) |
184 | | static inline void SetOpenMPMaxActiveLevels(const int value) |
185 | | { |
186 | | #if defined(MAGICKCORE_WINDOWS_SUPPORT) |
187 | | omp_set_nested(value); |
188 | | #else |
189 | | omp_set_max_active_levels(value ? 2 : 1); |
190 | | #endif |
191 | | #else |
192 | | static inline void SetOpenMPMaxActiveLevels(const int magick_unused(value)) |
193 | 0 | { |
194 | 0 | magick_unreferenced(value); |
195 | 0 | #endif |
196 | 0 | } Unexecuted instantiation: annotate.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: attribute.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: cache.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: cache-view.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: channel.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: colormap.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: colorspace.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: compare.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: composite.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: constitute.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: decorate.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: display.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: distort.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: distribute-cache.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: draw.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: effect.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: enhance.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: feature.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: fourier.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: fx.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: image.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: layer.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: log.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: magic.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: magick.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: coder.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: matrix.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: morphology.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: opencl.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: paint.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: pixel.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: policy.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: prepress.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: property.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: profile.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: quantize.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: quantum.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: random.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: resize.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: resource.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: segment.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: semaphore.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: shear.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: static.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: statistic.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: stream.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: transform.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: threshold.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: visual-effects.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: vision.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: ashlar.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: cube.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: cut.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: dcm.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: dpx.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: fits.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: ftxt.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: hald.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: json.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: mat.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: msl.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: pdf.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: plasma.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: pnm.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: ps2.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: ps3.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: ps.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: psd.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: sgi.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: sixel.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: svg.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: tga.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: txt.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: viff.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: vips.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: xpm.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: yaml.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: jpeg.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: png.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: tiff.c:SetOpenMPMaxActiveLevels Unexecuted instantiation: thread.c:SetOpenMPMaxActiveLevels |
197 | | |
198 | | #if defined(__cplusplus) || defined(c_plusplus) |
199 | | } |
200 | | #endif |
201 | | |
202 | | #endif |