summaryrefslogtreecommitdiff
path: root/src/main/ScheduleInterface.c
Commit message (Collapse)AuthorAge
* Correct a severe error in handling sync statements in schedulingschnetter2005-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | groups. Whether the synchronisation was done by CCTK_CallFunction or not was stored in the "synchronised" flag of a t_sched_data object. This object exists only once for the simulation, and not once for each recursive call of the scheduler when it traverses groups. Thus the information was correct only for the innermost schedule item, namely functions, and incorrect for schedule groups. Because PUGH does not overload CCTK_CallFunction, and thus this flag always stays false, I assume that this error does not occur with PUGH simulations. It does occur with Carpet simulations. As a quick solution, I moved the "synchronised" flag from the t_sched_data structure into the t_attribute structure. This does not work for recursive calls. It may be that the t_attribute structure is meant for unchanging information. In that case, it is necessary to construct a stack of t_sched_data objects. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4060 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add additional scheduler options "loop-local", "loop-singlemap",schnetter2004-07-31
| | | | | | | | "loop-level", "loop-global", and "loop-meta". This makes CallFunction loop over the corresponding modes. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3812 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Output more information when an unknown schedule option is encountered.schnetter2004-07-31
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3811 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Delimit timer info with "=" instead of "-" to make it more readable.schnetter2004-07-31
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3810 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add option flag for 'local' mode.tradke2004-06-23
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3788 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Describe POSTRESTRICT and POSTREGRID bins during startup.schnetter2004-06-11
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3768 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Create timers with unique names by using an integer serial number.schnetter2004-04-06
| | | | | | | | | | | This removes spurious timer warnings. Check malloc return value. Change message from "[...] at [group]" to "[...] in [group]". git-svn-id: http://svn.cactuscode.org/flesh/trunk@3646 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Check malloc return valueschnetter2004-04-04
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3643 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add new scheduling options "meta" and "singlemap" for Carpet.schnetter2004-02-16
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3575 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Allows scheduling in the analysis bin without any triggers. Thisschnetter2004-01-21
| | | | | | | executes the scheduled item always. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3552 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Print WRAGH bin name in schedule treeschnetter2004-01-16
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3506 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fix a bug in the flesh's timer output for the case when the same routine getstradke2003-12-01
| | | | | | | scheduled at different schedule bins. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3467 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Print the schedule bin names, enclosed in square brackets, in theschnetter2003-10-13
| | | | | | | schedule tree. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3432 17b73243-c579-4c4c-a9d2-2d5706c11dac
* new CCTK_WRAGH timebinrideout2003-08-22
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3384 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added level mode:goodale2003-05-09
| | | | | | | | | | | a scheduled routine can have options associated with it. LEVEL mode is where the routine should only be called once for any set of sub-grids with the same cctk_levfac numbers. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@3209 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Allow routines scheduled within groups triggered in analysis to be run if thegoodale2003-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | enclosing group is triggered. The logic is now that if a group is triggered at analysis, all member routines or groups of that group will be automatically triggered unless they in turn have a trigger, in which case that overrides the trigger. E.g. schedule TestSchedule_CalcOne AT Analysis before TestSchedule_Analysis { storage: testschedule::one trigger: testschedule::one lang: C } "Calculate the value of one" schedule group TestSchedule_Analysis at ANALYSIS { trigger: testschedule::two testschedule::three } "TestSchedule top level analysis group" schedule TestSchedule_CalcTwo IN TestSchedule_Analysis { trigger: testschedule::two storage: testschedule::two lang: C } "Calculate the value of two" schedule GROUP TestSchedule_Analysis2 in TestSchedule_Analysis after TestSchedule_CalcTwo { trigger: testschedule::three } "TestSchedule second level analysis group" schedule TestSchedule_CalcThree IN TestSchedule_Analysis2 { trigger: testschedule::three storage: testschedule::three lang: C } "Calculate the value of three" will call the appropriate routines to calculate one, two or three if these are selected for output. As before, output is done on any trigger variable or variable group when a routine with the variable as a trigger exits. So in the above example "three" is output when CalcThree exits. If this is not desired, the trigger and storage for "three" could have been placed on the enclosing schedule group, and then the routine would have been called even if output was only requested for "two" and not for "three". This fixes PR 694, and helps with PR 844. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@3188 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added a check against scheduling items with the same name in a schedule bingoodale2003-02-17
| | | | | | | | | or group. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@3148 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Now scheduling a group AS preserves the identity of the group, allowinggoodale2003-02-17
| | | | | | | | | | | | | | | | people to schedule in the real name and then schedule many aliases of the group in the same schedule bin or parent group. Note that you need to do a make <config>-rebuild on your configurations after updating with this change. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@3147 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add group desription to printed schedule treeallen2002-12-30
| | | | | | | Closes Cactus/1283 git-svn-id: http://svn.cactuscode.org/flesh/trunk@3068 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Putting semicolons at the end of CCTK_FILEVERSIONs.goodale2002-11-12
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@3029 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Don't call malloc() with a size of zero bytes.tradke2002-06-07
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2900 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Only try and increase storage if there are some grid variable groupsallen2002-04-28
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2768 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Passing timelevel storage info from schedule.ccl files to the flesh. Thisgoodale2002-04-17
| | | | | | | | | | | | | should now work. Note that the COMM stuff is now completely obsoleted and the schedule stuff no longer schedules variable groups for comm (this only affects driver writers as the statement has been deprecated for ages). Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2725 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Change the top-level storage for GVs to use new GroupStorageIncrease.goodale2002-04-16
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2723 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Changed to use the new GroupStorageIncrease/Decrease functions.goodale2002-04-04
| | | | | | | | | | | | Currently passes -1 as the timelevel for each group as we don't specify and read that data from the schedule.ccl files yet. This should make no visible change to anyone. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2694 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Formatting change when printing out group names. Only puts a label at thegoodale2002-03-26
| | | | | | | | | beginning of a group now. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2670 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fixed a thing from my previous commit when printing the schedule tree.tradke2002-03-25
| | | | | | | | Also put in Erik's patch to print group names in a schedule. This closes PR Cactus/771. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2669 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fixed the indentation level when printing scheduled groups.tradke2002-03-25
| | | | | | | This closes PR Cactus/943. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2664 17b73243-c579-4c4c-a9d2-2d5706c11dac
* When printing the schedule tree, also say when periodic output is done.tradke2002-03-19
| | | | | | | This closes PR Cactus/804. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2655 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Print routines which are registered for CCTK_POST_RECOVER_VARIABLES.tradke2002-03-19
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2654 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Bugfix in printing runtime information.tradke2001-12-21
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2526 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Moved the very first CCTK_POSTSTEP schedule bin before CCTK_RECOVER_VARIABLES.tradke2001-12-17
| | | | | | | | | Now POSTSTEP routines aren't run anymore twice on the same timestep after recovery. Closes PR Cactus-824 and Cactus-826. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2512 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Shortened the headings for the Cactus default timers a bit (only have thetradke2001-12-11
| | | | | | | | | | timer routine name in it). When outputting the timing info with 'cactus::cctk_timer_output = "full"' also print the units for each timer in its heading. Closes PR Cactus/275. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2495 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Change "Total time" to "Total time for simulation" in timer reportallen2001-11-05
| | | | | | | | | so it can be grepped for easily. Removing a debug statement I think I left in last commit git-svn-id: http://svn.cactuscode.org/flesh/trunk@2451 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Adding the trigger groups for a routine to the cFunctionData structure.allen2001-11-03
| | | | | | | This field should be considered volatile, it may not remain on this structure git-svn-id: http://svn.cactuscode.org/flesh/trunk@2448 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added thorn name, routine name and scheduling bin to the FunctionDataallen2001-10-31
| | | | | | | | structure. This should be considered volatile, the information might move back to the internal structure. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2444 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added timing and output of total time.tradke2001-09-20
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2370 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Some reformatting of the timer information table (cctk_timer_output = "full").tradke2001-08-31
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2323 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Check return code of CCTK_CreateTimer().tradke2001-08-27
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2320 17b73243-c579-4c4c-a9d2-2d5706c11dac
* The scheduler now creates named timers for every scheduled routine.tradke2001-07-12
| | | | | | | The name is build as "<thorn> <routine description from schedule.ccl>". git-svn-id: http://svn.cactuscode.org/flesh/trunk@2289 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New include file for timersallen2001-07-10
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2279 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Also print the total time for every time bin if cctk_timer_output is enabled.tradke2001-06-12
| | | | | | | | This is just for syncing my version with the cvs. Still not perfect, we could at least also output the total time for all time bins. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2228 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Making rcsid strings constant - PR 669.goodale2001-05-10
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2159 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added more schedule bins to printing off schedule and timersallen2001-05-06
| | | | | | | Cactus/627 git-svn-id: http://svn.cactuscode.org/flesh/trunk@2150 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fixing FILEVERSION stuffallen2001-05-05
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2148 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fix for text in schedule printout during startupallen2001-05-05
| | | | | | | Cactus/661 git-svn-id: http://svn.cactuscode.org/flesh/trunk@2146 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Changing schedule tree print statements to contain changes to calling order.allen2001-04-18
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2124 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Cactus/586allen2001-04-15
| | | | | | | | Added ValidateModifiers routine to check that while option in the schedule file uses a CCTK_INT grid variable git-svn-id: http://svn.cactuscode.org/flesh/trunk@2114 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fixing order of sync and trigger actions for analysis routines.goodale2001-03-17
| | | | | | | | | Fixes PR 567 - good eyes Erik. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2083 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Removed unused variable in CCTKi_ScheduleCallFunction().tradke2001-02-23
| | | | | | | | Fixed gcc compiler warnings about signed/unsigned comparisons and unused function parameters. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2042 17b73243-c579-4c4c-a9d2-2d5706c11dac