- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I noticed that there is a piece of code of function __create_enclave in psw (urts/urts_com.h), so what is the propose of this code below? Is it helpful for vtune profiling in sgx enclave? How can I enable the isVTuneProfiling flag?
__itt_init_ittlib(NULL, __itt_group_none); bool isVTuneProfiling; if(__itt_get_ittapi_global()->api_initialized && __itt_get_ittapi_global()->lib) isVTuneProfiling = true; else isVTuneProfiling = false; bool is_SGX_DBG_OPTIN_set = false; is_SGX_DBG_OPTIN_set = is_SGX_DBG_OPTIN_variable_set(); if (isVTuneProfiling || is_SGX_DBG_OPTIN_set) { SE_TRACE(SE_TRACE_DEBUG, "VTune is profiling or SGX_DBG_OPTIN is set\n"); bool thread_updated; thread_updated = enclave->update_debug_flag(1); if(thread_updated == false) { SE_TRACE(SE_TRACE_DEBUG, "Failed to update debug OPTIN bit\n"); } else { SE_TRACE(SE_TRACE_DEBUG, "Updated debug OPTIN bit\n"); } if (isVTuneProfiling) { uint64_t enclave_start_addr; uint64_t enclave_end_addr; const char* enclave_path; enclave_start_addr = (uint64_t) loader.get_start_addr(); enclave_end_addr = enclave_start_addr + (uint64_t) metadata->enclave_size -1; SE_TRACE(SE_TRACE_DEBUG, "Invoking VTune's module mapping API __itt_module_load \n"); SE_TRACE(SE_TRACE_DEBUG, "Enclave_start_addr==0x%llx\n", enclave_start_addr); SE_TRACE(SE_TRACE_DEBUG, "Enclave_end_addr==0x%llx\n", enclave_end_addr); enclave_path = (const char*)file.name; SE_TRACE(SE_TRACE_DEBUG, "Enclave_path==%s\n", enclave_path); __itt_module_load((void*)enclave_start_addr, (void*) enclave_end_addr, enclave_path); } }
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
[edit for phrasing/clarity]
The implementation in the SGX URTS to enable VTune to profile enclaves is what you copy+pasted.
Page 20 of https://01.org/sites/default/files/documentation/intel_sgx_sdk_developer_reference_for_linux_os_pdf.pdf has more info on how to profile enclaves using VTune.
Francisco
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page