Dr. Harmut Kaiser
I think (not sure)  this is related to "Stack overflow detection for
hpx-threads". But in this case it still leads to segmentation_fault, it
should be stack size overflow, isn't ?
Again, I'm not sure about this thing,
Are executors in HPX is complete(full featured) for CPU ?
Thanks
Praveen

On 8 October 2017 at 22:30, <[email protected]> wrote:

> Send hpx-users mailing list submissions to
>         [email protected]
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
> or, via email, send a message with subject or body 'help' to
>         [email protected]
>
> You can reach the person managing the list at
>         [email protected]
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of hpx-users digest..."
>
>
> Today's Topics:
>
>    1. thread_stacksize_large for HPX_PLAIN_ACTION not working?
>       (Steve Petruzza)
>    2. Re: thread_stacksize_large for HPX_PLAIN_ACTION not       working?
>       (Hartmut Kaiser)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Sun, 8 Oct 2017 02:24:21 -0600
> From: Steve Petruzza <[email protected]>
> Subject: [hpx-users] thread_stacksize_large for HPX_PLAIN_ACTION not
>         working?
> To: [email protected]
> Message-ID: <[email protected]>
> Content-Type: text/plain; charset=utf-8
>
> Hi,
>
> After long debugging of my code I?ve found that calling hex::async on an
> Actions that allocates some data in the stack results in SEG_FAULT. The
> same is not true if I use simple (local) function calls.
>
> Here is my code:
>
> ???????????
>
> int test(){
>   char filename[64*1024];
>
>   printf("DONE\n");
>   return 0;
>
> }
>
> HPX_PLAIN_ACTION(testio)
>
> int hpx_main(boost::program_options::variables_map& vm)
> {
>   hpx::parallel::execution::default_executor fancy_executor(
>             hpx::threads::thread_priority_high,
>             hpx::threads::thread_stacksize_large);
>
>   testio_action act;
>   hpx::future<int> out = hpx::async(fancy_executor, act, hpx::find_here());
>
>   out.get();
>
>   return hpx::finalize();
> }
> ???????????
>
> This code results in a SEG_FAULT in test().
>
> Instead if I use the same function test() as a local call with:
>   hpx::future<int> out = hpx::async(fancy_executor, &testio);
>
> Works correctly.
>
> What is going wrong using the Action? Should I add any settings to my
> executor or to HPX to tell that my actions require a bit more stack
> allocation?
>
> Thank you,
> Steve
>
>
>
>
>
>
> ------------------------------
>
> Message: 2
> Date: Sun, 8 Oct 2017 09:33:22 -0500
> From: "Hartmut Kaiser" <[email protected]>
> Subject: Re: [hpx-users] thread_stacksize_large for HPX_PLAIN_ACTION
>         not     working?
> To: <[email protected]>
> Message-ID: <[email protected]>
> Content-Type: text/plain;       charset="UTF-8"
>
> Steve,
>
> > After long debugging of my code I?ve found that calling hex::async on an
> > Actions that allocates some data in the stack results in SEG_FAULT. The
> > same is not true if I use simple (local) function calls.
>
> I think that we don't send the executor over the wire, they probably will
> not work even for local invocations of actions.
> This is clearly a bug (i.e. missing implementation). Would you mind
> opening a ticket and attach a smallest possible self-contained test case?
>
> Thanks!
> Regards Hartmut
> ---------------
> http://boost-spirit.com
> http://stellar.cct.lsu.edu
>
>
> >
> > Here is my code:
> >
> > ???????????
> >
> > int test(){
> >   char filename[64*1024];
> >
> >   printf("DONE\n");
> >   return 0;
> >
> > }
> >
> > HPX_PLAIN_ACTION(testio)
> >
> > int hpx_main(boost::program_options::variables_map& vm)
> > {
> >   hpx::parallel::execution::default_executor fancy_executor(
> >             hpx::threads::thread_priority_high,
> >             hpx::threads::thread_stacksize_large);
> >
> >   testio_action act;
> >   hpx::future<int> out = hpx::async(fancy_executor, act,
> > hpx::find_here());
> >
> >   out.get();
> >
> >   return hpx::finalize();
> > }
> > ???????????
> >
> > This code results in a SEG_FAULT in test().
> >
> > Instead if I use the same function test() as a local call with:
> >   hpx::future<int> out = hpx::async(fancy_executor, &testio);
> >
> > Works correctly.
> >
> > What is going wrong using the Action? Should I add any settings to my
> > executor or to HPX to tell that my actions require a bit more stack
> > allocation?
> >
> > Thank you,
> > Steve
> >
> >
> >
> >
> > _______________________________________________
> > hpx-users mailing list
> > [email protected]
> > https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
>
>
>
> ------------------------------
>
> _______________________________________________
> hpx-users mailing list
> [email protected]
> https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
>
>
> End of hpx-users Digest, Vol 53, Issue 2
> ****************************************
>
_______________________________________________
hpx-users mailing list
[email protected]
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users

Reply via email to