Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Harsh
Beginner
131 Views

Problems with additional-annotations.h

I use VS 2012 as my build environment on Win 7.However my VS never recogonizes the annotations header file,though it loads it.Can anybody suggest a workaround for this issue?

0 Kudos
12 Replies
Barry_T_Intel
Employee
131 Views

I have no idea what "the annotations header file" is.

This forum is for the discussion of Intel Cilk Plus issues.  I suspect you've posted the question in the wrong place.

    - Barry

Harsh
Beginner
131 Views

the header file is used in parallel studio to mark areas where we want to bring in parallelism.

Barry_T_Intel
Employee
131 Views

Are you trying to use Intel Advisor?

   - Barry

Harsh
Beginner
131 Views

Yes.I am basically analysing the improvement I am achieving by using Cilk.

Ravi_V_Intel
Employee
131 Views

Hello Harsh,

Sorry for the inconvenience.

Would you be able to create a small test case and share it with me? You can send it to me at ravi DOT vemuri AT intel DOT com

In the meanwhile, please check the following:

  • Mark the project with the annotations as "Set as Startup Project" to ensure that the annotations will be recognized
  • Try reproducing the problem with the sample projects available with the Intel(R) Advisor XE 2013

Can you also please clarify what you mean by the following: "However my VS never recogonizes the annotations header file,though it loads it"? I am assuming that you mean that the annotations are not detected by Intel(R) Advisor XE product. If you mean something else, please clarify.

Hope it helps.

Ravi

Harsh
Beginner
131 Views

My VS environment loads the header file but does not recononize ANNOTATE_SITE_BEGIN() .

Zakhar_M_Intel1
Employee
131 Views

Dear Harsh,

How did you discover that VS "doesn't recognize" ANNOTATE_SITE_BEGIN? Or in other words, what was exact indication of given problem?  I could imagine following cases:

  1. After you added ANNOTATE_SITE_BEGIN(site_id) to some foo.cpp and also added advisor-annotate.h to your project,  MSVS compiler (which compiler version do you use?) still generates an error message like given one: error : identifier "ANNOTATE_SITE_BEGIN" is undefined
  2. After adding advisor-annotate.h you've got some error messages like "redefinition; different basic types" or some "symbol conflicts" (this rare case is covered here: http://software.intel.com/en-us/node/432358)
  3. When running Advisor Suitability or Advisor Correctness analysis - in Advisor' "result window" you see a warning message like following: "Your configuration might be incomplete... Insert annotations" or "No annotations found".

Please let us know if you took in mind one of 3 cases enumerated above (if yes, which one) or if you took in mind something else! Please note, Visual Studio itself doesn't recognize annotations. This is Advisor XE Visual Studio plug-in job to do some auto-detection stuff, and it's not exactly clear from your message ( "VS doesn't recognize ANNOTATE_SITE_BEGIN") what specifically "went wrong" in your environment.

Harsh
Beginner
131 Views

It does not recononize ANNOTATE_SITE_BEGIN....asks me to declare it.

Zakhar_M_Intel1
Employee
131 Views

Harsh, are you sure that you've added

     #include "advisor-annotate.h"

in the same compilation unit (says the same .cpp file) as the one where you also added ANNOTATE_SITE_BEGIN?

I just noticed that you've used "additional-annotate.h" header file name in forum topic caption. But there is no such "additional-annotate.h" header files in existence. So, my suggestion just in case you really made this misprint, - don't use wrong "additional-annotate.h" header filename, but use "advisor-annotate.h" instead.

 

In general most common way to annotate loop in C++ code (as exposed via "Annotations Example" or "Annotation Wizard" features), is:

#include "advisor-annotate.h"// Add to each module that contains Intel Advisor XE annotations

// Don't forget to add reference to advisor-annotate.h (/I"%ADVISOR_XE_2013_DIR%"\include or specify absolute path instead) in your Build Settings or makefile

// Begin a parallel code region (parallel site)

ANNOTATE_SITE_BEGIN( MySite1 ); // Place before the loop control statement
// for (...) or other loop control statement
    ANNOTATE_ITERATION_TASK( MyTask1 ); // Place at the start of loop body. This iterative-task annotation identifies an entire body as a task. 
    // loop body
ANNOTATE_SITE_END(); // End the parallel code region, after task execution completes

Harsh
Beginner
131 Views

yes...im pretty sure they are in the same file...

Holly_W_Intel
Employee
131 Views

Can you make sure that you are including "advisor-annotate.h" and not "additional-annotate.h"

 

If that isn't the problem, could you attach the exact compilation output?

 

Thanks,

 

 

Harsh
Beginner
131 Views

I performed a reinstall and thinga appear in order now. Thank you everyone!