[parsec-users] breakpoint in parsecmgmt

Christian Bienia cbienia at CS.Princeton.EDU
Mon May 5 13:20:39 EDT 2008


Huan,

That's what I was suggesting. The code which we provide by default should
just be considered examples, please feel free to modify the hooks in a way
that suits you.

-Chris


-----Original Message-----
From: parsec-users-bounces at lists.cs.princeton.edu
[mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of Huan Fang
Sent: Monday, May 05, 2008 7:31 AM
To: PARSEC Users
Subject: Re: [parsec-users] breakpoint in parsecmgmt

Hi Chris,

Thanks for that!
There is a hook function __parsec_bench_begin() at the beginning of 
main, however, magic_breakpoint is not included in this function.
Unpacking input files manually is one possible solution for me, Another 
way might be adding MAGIC_BREAKPOINT inside __parsec_bench_begin() as 
__parsec_roi_begin() does. What do you think?

Regards,
Huan
> Hi Huan,
>
> There already is another PARSEC hook function at the beginning of main.
It's
> the first thing that gets executed when a PARSEC benchmark starts.
>
> Adding proper debugging breakpoints to parsecmgmt will be a little awkward
> because it's a bash script. So you would have to find a good location in
the
> bash executable. But if you just want to execute another program you can
> easily modify parsecmgmt itself. You can add anything that is executable
at
> the command line.
>
> Unpacking any input files that might be required is one of the tasks
> parsecmgmt has to take care of. But you can also do that yourself, the
> archives are in the inputs/ directory of every package. Parsecmgmt has to
do
> that from scratch for every run because it has no information about the
> current state of the run directory. But if you take control you will of
> course know whether the input files have been removed or modified, so you
> would have to do that only once.
>
> - Chris
>
>
> -----Original Message-----
> From: parsec-users-bounces at lists.cs.princeton.edu
> [mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of Huan
Fang
> Sent: Saturday, May 03, 2008 5:29 PM
> To: PARSEC Users
> Subject: Re: [parsec-users] breakpoint in parsecmgmt
>
> Hi Chris,
>
> I know there is a breakpoint with magic instruction just before ROI.That's
> the place I can gather some useful information.But we want another
> breakpoint just at the beginning of benchmark where rudy can start.
> I can run blackscholes manually at its own directory.But for other
> programs,parsecmgmt is needed to unpack some packages like 'simsmall' as
> the input to the programs, right?
> Maybe we can add an hook at the first line in the main function? or there
> is other solutions to insert some code in the parsecmgmt script?
>
> Regards,
> Huan
>   
>> Hi Huan,
>>
>> There are multiple ways to do that. First of all, you don't need
>> parsecmgmt
>> to run the benchmarks. If you feel the script takes too much time you can
>> also manually setup the run directory and execute the benchmark yourself.
>> This way you would avoid all the checks and reinitialization work that
>> parsecmgmt has to do before every run. The best position for a breakpoint
>> is
>> just before the ROI (Region of Interest). You can use the PARSEC hooks
for
>> that. You would also skip the initialization of the workload and would
>> break
>> just before the parallel phase begins. We also added support for Simics
>> magic instructions, but it is disabled by default. Go to the hooks
package
>> and edit config.h to enable it. You will also find some description of
the
>> hooks API in that directory.
>>
>> - Chris
>>
>>
>>
>> -----Original Message-----
>> From: parsec-users-bounces at lists.cs.princeton.edu
>> [mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of Huan
>> Fang
>> Sent: Saturday, May 03, 2008 10:38 AM
>> To: PARSEC Users
>> Subject: [parsec-users] breakpoint in parsecmgmt
>>
>> Hi all,
>>
>> After some simulations with Simics, I found the initilization part of
>> 'parsecmgmt' is time consuming. So, I am thinking if we can add an
>> breakpoint just before executing the benchmark.
>> For example:
>>
>> [PARSEC] [========== Running benchmark blackscholes ==========]
>> [PARSEC] Deleting old run directory.
>> [PARSEC] Setting up run directory.
>> [PARSEC] No archive for input 'test' available, skipping input setup.
>>
>> breakpoint...
>>
>> [PARSEC] Running 'time
>>
>>     
>
/parsec-1.0/bin/../pkgs/apps/blackscholes/inst/i686-linux.gcc-hooks/bin/blac
>   
>> kscholes
>> 4 1'
>> ...
>>
>> The breakpoint can be SIMICS_MAGIC_INSTRUCTION or something like that we
>> can initilize ruby in simics.
>>
>> Thanks.
>> Huan
>> _______________________________________________
>> parsec-users mailing list
>> parsec-users at lists.cs.princeton.edu
>> https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>>
>> _______________________________________________
>> parsec-users mailing list
>> parsec-users at lists.cs.princeton.edu
>> https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>>
>>     
>
>
>   

_______________________________________________
parsec-users mailing list
parsec-users at lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/parsec-users



More information about the parsec-users mailing list