[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [ptp-dev] problem in launching external tools for performance tool integration
|
Greetings. It looks like UPC is indeed a new basic compiler type. I believe I can add support for this to the core of the ETFw. The new implementation will have a UPC compiler tag, in addition to the current CC, CXX and F90. I think this should be fairly straightforward to implement. Hopefully I will have some test plugins for you to try out sometime next week. Would it be possible for me to look at your complete set of UPC plugins? They aren't strictly needed for me to make this change, but I won't be able to test on this side without them.
Regards,
Wyatt
On Fri, Jun 26, 2009 at 12:11 PM, Balaji Subramanian
<subramanian@xxxxxxxxxxx> wrote:
Hi Wyatt,
Please find my attached toolchain.xml along with this email. Let us
know whether it is possible to update the ptp performance tool to
support upc. If possible, can you please provide any information or
pointers that you have regarding the way to integrate upc in ptp
performance tools. Any help or information you provide would be very
much appreciated.
Thanks & regards,
Balaji
Balaji Subramanian wrote:
Hi Wyatt,
Sorry for the delayed response. I build the project by specifying
ppwupcc as compiler for Default_Performance_Analysis_null configuration
which was created after running the profiler once(as you have specified
in the previous email). After doing this, I was able to see the build
command displayed in the build but the progress bar hangs in the
Building/Instrumentation stage.
I invoked the external tool for other mpi project and as you already
know it that there were 4 phases involved in running external tool:
Launching, Building/Instrumentation, running and analyzing.
Trying to build the upc project with my external tool.xml causes it to
hang in the Building/Instrumentation stage. Please let me know your
comments about why the external tool hangs in the
Building/Instrumentation stage even after building the project. (I was
able to run the upc executable manually after the build step and the
executable is working fine.) I don't know why it hangs in
Building/Instrumenting stage even after building the upc application.
Please let me know whether
you need any more information or am I missing something. The help
provided by you so far is highly appreciated.
Thanks again.
With best regards,
Balaji
Wyatt Spear wrote:
How did you have to change the build configuration to make
it work properly? I would like to make the ETFw do whatever you did
automatically.
Thanks,
Wyatt
On Tue, Jun 23, 2009 at 12:25 PM, Balaji
Subramanian
<subramanian@xxxxxxxxxxx>
wrote:
Hi Wyatt,
Thanks for clarifying the questions I had.
As you have mentioned, I tried changing the build configuration for
Default_Performance_Analysis_null in the C/C++ build settings and by
doing it this way I was able to build the upc project with ppwupcc.
I was able to see it getting build. I would try building this project
this way. I would try running it and let you know.
Thanks for the information and help provided. I would let you know
about any progress or issues encountered.
With best regards,
Balaji
Wyatt Spear wrote:
The ETFw compiler system works by making
a
copy of the
selected build configuration ("Default" in this case) and replacing the
compiler commands in the new build configuration with the ones
specified in the xml file. Source file recognition is still done by
the CDT core, all the ETFw does is change the command used on the
source files. This means that if the CDT can't compile your project
correctly on its own with the proper compilers set manually the ETFw
usually won't do any better. However if the CDT works so should the
ETFw as long as it is generating valid compiler commands. What the
ETFw does should be about equivalent to the following manual procedure:
Select your project in the Project Explorer and hit alt+enter to open
the properties window
Go to C/C++ Build -> Settings
Replace the C compiler and linker commands with 'ppwupcc'
The ETFw would add your compiler specific options defined in the xml
file, and do this to a copy of the build configuration instead of the
original, but perhaps you could check with this procedure and see if it
works. The ETFw only recognizes C, C++ and Fortran compilers right
now, so if you have added another UPC specific set of compiler
configuration options I may need to expand the ETFw's compiler coverage.
Note that the build configuration created by ETFw,
Default_PerformanceAnalysis_null, should be available in your project
build settings. You can look at that to see what it is trying to do.
Regards,
Wyatt Spear
On Tue, Jun 23, 2009 at 10:26 AM,
Balaji
Subramanian
<subramanian@xxxxxxxxxxx>
wrote:
Hi Wyatt,
Thanks again for the detailed and prompt response.
I did all the steps that you have mentioned below. Let me explain
in detail the nature of project I am trying to build. We created a
custom template wizard for creating a UPC project. Also, a new
toolchain was created for building this UPC. I was able to build the
project with my UPC toolchain and was able to get the executable. I
wanted to integrate our performance tool with eclipse so I used
external tools framework to do it.
Since I am using a toolchain with Default configuration, I am getting
the build configuration in my project as "Default".
I tried another scenario where I created an ANSI C project and invoked
the external tool. In this case, I was able to see my compiler defined
in tool.xml being used.
I have couple of doubts:
The internal builder used to build it with my own toolchain to use the
upcc compiler.
My customized project has source files with extension "upc". How does
external tools discover the filename with upc externsion ?
What should be done for building my customized project type with
external tools ?
Please let me know
about
any
information that you could provide. Any help provided is very much
appreciated.
Thanks again,
Balaji
Wyatt Spear wrote:
I did not have to do anything
special.
I
opened the
Profile Configurations window
Run->Profile Configurations...
I double clicked on Performance Analysis to create a new configuration.
I selected the project and build configuration to use in the Main tab.
I went to the Performance Analysis tab and selected PPW from the
"Select Tool" drop-down box.
Then I hit apply and Profile and it built and tried to run as expected.
The binary built and showed up in the "Debug_PerformanceAnalysis_null"
directory under the main project directory.
I assume this is more or less what you have already tried, though.
Please let me know if it works for you. If not I will have to dig
deeper. I'm not sure why you would have a "Default" build
configuration instead of Debug or Release, which are the standards.
That could be relevant. Also, I don't have UPC on my system right now
so I just symlinked gcc to ppwupcc. That should make no difference on
its own, but if there is a special UPC toolchain that I am missing I
may need to add support for that to the ETFw. As I recall there is UPC
support in the CDT now, but I haven't seen any specific build
configuration options for it in my installation.
One suggestion, while you're working on just the build step, select
"Build the instrumented executable but do not launch it" on the
Performance Analysis tab. That will run the build step by itself so
the launch won't get hung up if no binary is created. Also note that
in some configurations the CDT will run a default build (the build
using the standard compiler) before running the build given by the
ETFw. The builds go in different directories. I'm still working on
keeping this from happening, but for now it is normal.
Regards,
Wyatt Spear
On Tue, Jun 23, 2009 at 8:35 AM,
Balaji
Subramanian
<subramanian@xxxxxxxxxxx>
wrote:
Thanks Wyatt for trying
my
build. Can you please let me know what steps you did so that it would
use my tool.xml compiler command. In my console, I still see that it is
using upcc compiler command instead of my defined one. Let me know
about it. Very much appreciated.
Thanks again,
Balaji
Wyatt Spear wrote:
The build step seems to work okay
on my
system, the
compiler command in your tool definition xml correctly replaces the one
used by my internal buiilder. I will try a couple other things to see
if I can reproduce this problem.
Regards,
Wyatt Spear
On Mon, Jun 22, 2009 at 2:47
PM,
Balaji
Subramanian
<subramanian@xxxxxxxxxxx>
wrote:
Thanks Wyatt for the
response and the information. My comments are inline.
Wyatt Spear wrote:
Greetings,
Can you confirm that the build step is completing successfully? The
build console should show you the full build command used by Eclipse
and you should be able to run the resulting binary from the command
line.
I think so
there
is
problem
with my build itself. The project build is not using my ppwupcc
compiler but using the Internal Builder. I have pasted below the
console output that I got form building it using the profiler. (the
proj. name is upc_proj; the internal builder is upcc and I am trying to
override it with ppwupcc)
**** Rebuild of configuration Default_PerformanceAnalysis_null for
project upc_proj ****
**** Internal Builder is used for build ****
upcc -osrc/upc_proj ../src/upc_proj.upc
If the build step is
working
properly
then try making
this the very first tag in the execute section:
<utility command="echo" group="inbin"/>
This will cause Eclipse to echo the launch command to its text output
rather than attempt to execute the command. Try entering the command
at a regular linux console.
Please let me know how this works for you. In particular, if the
generated launch command works on the command line but fails in Eclipse
this may be a bug that I will need to address on this side.
You can test the analysis step by selecting the 'Select existing
performance data to analyze with the selected tool' option on the
Performance Analysis tab of the launch configuration. This will let
you choose a ppw file from your file system instead of the default that
it looks for after the execution step.
I tried
testing
the
analysis
step by selecting the 'Select existing performance data to analyze with
the selected tool' option. This option allows me to select PPW file and
launches the PPW GUI.
Please let me know your comments in why the rebuild of configuration is
not working. Any help would be appreciated.
Thanks,
Balaji
Regards,
Wyatt Spear
On Mon, Jun 22, 2009 at
11:41
AM,
Balaji
Subramanian
<subramanian@xxxxxxxxxxx>
wrote:
Hi,
We are trying to integrate our Parallel Performance Wizard tool
with PTP by using the External Tools Framework (ETFw). The tool.xml
which we are using is attached with this email. The following steps
were performed in launching our external tool:
1) Added the new tool by specifying our tool.xml in the Preferences
menu option.
2) Created a new profiler configuration based on this tool.
3) When we try to profile it with our tool, it displays the progress
bar specifying the launching delegate and it hangs.
I am not able to figure out why the launching delegate hangs. Besides,
I am not able to see any information or debug messages what's really
happening and why the launch fails.
Any information regarding nailing this issue would be very much
appreciated.
I am trying to launch the external tool framework with the following
configuration:
Eclipse version 3.4.2 (build id: M20090211-1700)
PTP External tools framework version (1.0.1.2009051108)
PTP Version (2.1.2-I200905110828)
Please let me know if you need any more information.
Thanks,
Balaji
_______________________________________________
ptp-dev mailing list
ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev