suspending/resuming/aborting the computation
log in

Advanced search

Message boards : Development : suspending/resuming/aborting the computation

Author Message
Profile paolomorettin
Project developer
Project tester
Project scientist
Send message
Joined: 20 Nov 13
Posts: 19
Credit: 13,027
RAC: 0
Message 141 - Posted: 21 Dec 2013, 16:26:02 UTC

Hi guys, I'm working on the issue pointed out by Valter here:

The function in boinc_api.cpp boinc_end_critical_section() used in our code actually checks for boinc_status.quit_request and boinc_status.abort_request, also if options.direct_process_action is true, it should suspend the work, by calling the boic_api.cpp function static int suspend_activities(bool called_from_worker).

What I got by reading the api source is that the option.direct_process_action flag tells boinc to handle the suspend requests. Calling boinc_init() hides a boinc_init_options(..) call with default values defined in boinc_api.h. That flag is true by default.

Also, another interesting flag is options.handles_process_control that enables the 'timer thread' to call handle_process_control_msg(). This function handles the status changes as the boinc_end_critical_section does. As for the previous one, also this flag is true by default.

I have no clue why it doesn't suspend.

Paolo - Application team dev (SSC11)

"If you were plowing a field, which would you rather use: two strong oxen or 1024 chickens?" Seymour Cray

Post to thread

Message boards : Development : suspending/resuming/aborting the computation

Main page · Your account · Message boards

Copyright © 2017 CNR-TN & UniTN