00001 00007 #ifndef CK_BI_CONFIG 00008 #define CK_BI_CONFIG 00009 #ifdef CMK_BALANCED_INJECTION_API 00010 #include <stdint.h> 00011 #include <gni_pub.h> 00012 00013 static inline uint16_t ck_get_GNI_BIConfig() 00014 { 00015 gni_bi_desc_t gni_bi_desc; 00016 uint32_t gni_device_id = 0; 00017 gni_return_t gni_rc = GNI_GetBIConfig(gni_device_id, &gni_bi_desc); 00018 if (gni_rc != GNI_RC_SUCCESS && CkMyPe() == 0) { 00019 CmiPrintf("Error, unable to retrieve BI config, rc=%d\n",gni_rc); 00020 } 00021 return(gni_bi_desc.current_bw); 00022 } 00023 00024 static inline void ck_set_GNI_BIConfig(uint16_t biValue) 00025 { 00026 uint16_t modes = GNI_BI_FLAG_APPLY_NOW; 00027 uint32_t gni_device_id = 0; 00028 uint16_t gni_rc = GNI_SetBIConfig(gni_device_id, biValue, 0, modes); 00029 if (gni_rc != GNI_RC_SUCCESS && CkMyPe() == 0) { 00030 CmiPrintf("Error, unable to set BI config, rc=%d\n",gni_rc); 00031 } 00032 } 00033 00034 #endif 00035 #endif