Par4All / par4all

Par4All is an automatic parallelizing and optimizing compiler (workbench) for C and Fortran sequential programs
www.par4all.org
Other
51 stars 11 forks source link

NPB parallelization Error #4

Open Premas opened 7 years ago

Premas commented 7 years ago

Hi,

When I try to parallelize DC benchmark of NPB (NAS Parallel Benchmark) suite, I get the following error. I have annexed the code file to be parallelized with this thread.

/** Command used for parallelization ****/

p4a dc.c adc.c extbuild.c rbt.c jobcntl.c -v DC.tar.gz

/* ERROR ****/

p4a: Defaulting to --openmp p4a: Generated project name: P4AsVXA p4a: CPP flags: p4a: PIPS: user warning in generic_proper_effects_of_complex_address_call_expression: PIPS currently does not know how to precisely handle address values used in complex call expressions expression p4a: PIPS: user warning in control_graph: Some statements are unreachable p4a: PIPS: user warning in control_graph: Unreachable statements: p4a: PIPS: user warning in control_graph: Statement: p4a: PIPS: user warning in control_graph: Statement number: 5199 p4a: PIPS: user warning in proper_effects_of_call: Statement -1 is ignored because it does not modify the store. p4a: PIPS: user warning in control_graph: Statement number: 5328 p4a: PIPS: user warning in control_graph: Statement number: 5252 p4a: PIPS: user warning in control_graph: Statement number: 5172 p4a: PIPS: user warning in safe_do_something: Request aborted in pipsmake: build phase/rule PRIVATIZE_MODULE for module ComputeGivenGroupbys. p4a: Not removing database directory /home/prema/DC/P4AsVXA.database p4a: Unhandled RuntimeError: in rmake: recursion on resource SUMMARY_EFFECTS of computeChecksum p4a: Traceback (most recent call last): File "/home/prema/Tools/build_par4all/lib/python2.6/site-packages/pips/p4a_opts.py", line 324, in exec_and_deal_with_errors fun() File "/home/prema/Tools/build_par4all/bin/p4a", line 701, in main raise output.exception RuntimeError: in rmake: recursion on resource SUMMARY_EFFECTS of computeChecksum

bac-4all commented 7 years ago
Hello,

  Is computeChecksum a recursive function? Recursivity is not
  handled by PIPS, and consequently by Par4All.

  Regards.

  Béatrice.

Le 26/06/2017 à 08:58, Premas a écrit :

  Hi,
  When I try to parallelize DC benchmark of NPB (NAS Parallel
    Benchmark) suite, I get the following error. I have annexed the
    code file to be parallelized with this thread.
  /****** Command used for parallelization ********/
  p4a dc.c adc.c extbuild.c rbt.c jobcntl.c -v
    DC.tar.gz
  /***** ERROR ****************/
  p4a: Defaulting to --openmp
    p4a: Generated project name: P4AsVXA
    p4a: CPP flags:
    p4a: PIPS: user warning in
    generic_proper_effects_of_complex_address_call_expression: PIPS
    currently does not know how to precisely handle address values
    used in complex call expressions expression
    p4a: PIPS: user warning in control_graph: Some statements are
    unreachable
    p4a: PIPS: user warning in control_graph: Unreachable
    statements:
    p4a: PIPS: user warning in control_graph: Statement:
    p4a: PIPS: user warning in control_graph: Statement number: 5199
    p4a: PIPS: user warning in proper_effects_of_call: Statement -1
    is ignored because it does not modify the store.
    p4a: PIPS: user warning in control_graph: Statement number: 5328
    p4a: PIPS: user warning in control_graph: Statement number: 5252
    p4a: PIPS: user warning in control_graph: Statement number: 5172
    p4a: PIPS: user warning in safe_do_something: Request aborted in
    pipsmake: build phase/rule PRIVATIZE_MODULE for module
    ComputeGivenGroupbys.
    p4a: Not removing database directory
    /home/prema/DC/P4AsVXA.database
    p4a: Unhandled RuntimeError: in rmake: recursion on resource
    SUMMARY_EFFECTS of computeChecksum
    p4a: Traceback (most recent call last):
    File

"/home/prema/Tools/build_par4all/lib/python2.6/site-packages/pips/p4a_opts.py", line 324, in exec_and_deal_with_errors fun() File "/home/prema/Tools/build_par4all/bin/p4a", line 701, in main raise output.exception RuntimeError: in rmake: recursion on resource SUMMARY_EFFECTS of computeChecksum — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

  {"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/Par4All/par4all","title":"Par4All/par4all","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/Par4All/par4all"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"NPB parallelization Error (#4)"}],"action":{"name":"View Issue","url":"https://github.com/Par4All/par4all/issues/4"}}}
Premas commented 7 years ago

Yes .. It is a recursive function. Can we remove the recursion and parse the Par4all for parallelization?

bac-4all commented 7 years ago
Le 26/06/2017 à 09:14, Premas a écrit :

  Yes .. It is a recursive function. Can we remove the recursion
    and parse the Par4all for parallelization?

I don't understand what you mean with "parse the Par4all". But
removing the recursion in the input code is definitely the way to
go.

  —
    You are receiving this because you commented.
    Reply to this email directly, view it on GitHub, or mute the thread.

  {"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/Par4All/par4all","title":"Par4All/par4all","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/Par4All/par4all"}},"updates":{"snippets":[{"icon":"PERSON","message":"@Premas in #4: Yes .. It is a recursive function. Can we remove the recursion and parse the Par4all for parallelization?"}],"action":{"name":"View Issue","url":"https://github.com/Par4All/par4all/issues/4#issuecomment-310981159"}}}