00001 /* 00002 * kmp_stub.h 00003 * $Revision: 42061 $ 00004 * $Date: 2013-02-28 16:36:24 -0600 (Thu, 28 Feb 2013) $ 00005 */ 00006 00007 /* <copyright> 00008 Copyright (c) 1997-2013 Intel Corporation. All Rights Reserved. 00009 00010 Redistribution and use in source and binary forms, with or without 00011 modification, are permitted provided that the following conditions 00012 are met: 00013 00014 * Redistributions of source code must retain the above copyright 00015 notice, this list of conditions and the following disclaimer. 00016 * Redistributions in binary form must reproduce the above copyright 00017 notice, this list of conditions and the following disclaimer in the 00018 documentation and/or other materials provided with the distribution. 00019 * Neither the name of Intel Corporation nor the names of its 00020 contributors may be used to endorse or promote products derived 00021 from this software without specific prior written permission. 00022 00023 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00024 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00025 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 00026 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 00027 HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00028 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00029 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 00030 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 00031 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00032 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 00033 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00034 00035 00036 ------------------------------------------------------------------------ 00037 00038 Portions of this software are protected under the following patents: 00039 U.S. Patent 5,812,852 00040 U.S. Patent 6,792,599 00041 U.S. Patent 7,069,556 00042 U.S. Patent 7,328,433 00043 U.S. Patent 7,500,242 00044 00045 </copyright> */ 00046 00047 #ifndef KMP_STUB_H 00048 #define KMP_STUB_H 00049 00050 #ifdef __cplusplus 00051 extern "C" { 00052 #endif // __cplusplus 00053 00054 void __kmps_set_blocktime( int arg ); 00055 int __kmps_get_blocktime( void ); 00056 void __kmps_set_dynamic( int arg ); 00057 int __kmps_get_dynamic( void ); 00058 void __kmps_set_library( int arg ); 00059 int __kmps_get_library( void ); 00060 void __kmps_set_nested( int arg ); 00061 int __kmps_get_nested( void ); 00062 void __kmps_set_stacksize( int arg ); 00063 int __kmps_get_stacksize(); 00064 00065 #if OMP_30_ENABLED 00066 #ifndef KMP_SCHED_TYPE_DEFINED 00067 #define KMP_SCHED_TYPE_DEFINED 00068 typedef enum kmp_sched { 00069 kmp_sched_static = 1, // mapped to kmp_sch_static_chunked (33) 00070 kmp_sched_dynamic = 2, // mapped to kmp_sch_dynamic_chunked (35) 00071 kmp_sched_guided = 3, // mapped to kmp_sch_guided_chunked (36) 00072 kmp_sched_auto = 4, // mapped to kmp_sch_auto (38) 00073 kmp_sched_default = kmp_sched_static // default scheduling 00074 } kmp_sched_t; 00075 #endif 00076 void __kmps_set_schedule( kmp_sched_t kind, int modifier ); 00077 void __kmps_get_schedule( kmp_sched_t *kind, int *modifier ); 00078 #endif // OMP_30_ENABLED 00079 00080 #if OMP_40_ENABLED 00081 void __kmps_set_proc_bind( enum kmp_proc_bind_t arg ); 00082 enum kmp_proc_bind_t __kmps_get_proc_bind( void ); 00083 #endif /* OMP_40_ENABLED */ 00084 00085 double __kmps_get_wtime(); 00086 double __kmps_get_wtick(); 00087 00088 #ifdef __cplusplus 00089 } // extern "C" 00090 #endif // __cplusplus 00091 00092 #endif // KMP_STUB_H 00093 00094 // end of file //