Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | Delay converting integers to reals | Erik Schnetter | 2012-08-10 | |
| | | | | Delay converting integers to reals, so that the simplification functions still act on integers. This improves the generated code. | |||
* | Handle Sign function while vectorising | Erik Schnetter | 2012-07-25 | |
| | ||||
* | Don't generate large integers; convert them to CCTK_REAL instead | Erik Schnetter | 2012-07-25 | |
| | ||||
* | CaKernel.m: Use CaKernel static kernels | Ian Hinder | 2012-07-25 | |
| | | | Dynamic compilation slows down execution; we can re-enable it when we are optimising. | |||
* | Add CaKernel initialisation function to the schedule | Ian Hinder | 2012-07-25 | |
| | ||||
* | Add BoundaryNoSync to BoundaryCalculationQ | Erik Schnetter | 2012-07-24 | |
| | ||||
* | Require MPI in auto-generated thorns | Erik Schnetter | 2012-07-24 | |
| | ||||
* | Introduce cctk_ash, retire cctk_lssh | Erik Schnetter | 2012-07-03 | |
| | | | | | | | | | Introduce cctk_ash, describing the process-local array shape that has been allocated. This may be larger than cctk_lsh, the process-local shape that should be used. Retire cctk_lssh and related infrastructure to handle staggered grid functions. | |||
* | Correct expanding Scalar[] | Erik Schnetter | 2012-06-13 | |
| | | | | | | | Handle kmadd and friends. Do not produce / operator; use ScalarINV instead to prevent problems with integer operands. | |||
* | Allow disabling UseJacobian for specific calculations | Erik Schnetter | 2012-06-02 | |
| | | | | | Add UseJacobian as possible flag for calculations, which then overrides the thorn's UseJacobian setting. | |||
* | Implement additional vectorisation optimisations | Erik Schnetter | 2012-05-30 | |
| | | | | | | | | | When vectorising, break the macros INV, SQR etc. apart, which allows further optimisations, such as avoinding the kmul in kmul[x, kdiv[1, y]]. Combine also operations on ToReal operands, so that these operations are performed on scalars, not on vectors, e.g. kmul[ToReal[omega], ToReal[omege]] now becomes ToReal[omega*omega]. | |||
* | Add BoundaryNoSync value for Where in calculations | Ian Hinder | 2012-05-02 | |
| | | | This is by analogy with InteriorNoSync. Ideally, this would be determined automatically. Less ideally, there would be a Sync -> True/False flag. But BoundaryNoSync is what we have. | |||
* | Use GetSchedule for calculations instead of accessing key directly | Ian Hinder | 2012-05-02 | |
| | ||||
* | Calculation.m: Add GetSchedule function | Ian Hinder | 2012-05-02 | |
| | ||||
* | Schedule.m: Fix bug from previous commit | Ian Hinder | 2012-04-30 | |
| | ||||
* | Schedule.m: List variables instead of groups in READS and WRITES lines | Ian Hinder | 2012-04-29 | |
| | | | This give more fine-grained control, and is consistent with CaKernel. | |||
* | Schedule.m: Add variablesSetInCalc and variablesReadInCalc | Ian Hinder | 2012-04-29 | |
| | ||||
* | Schedule.m: Add TODO and correct variable declaration | Ian Hinder | 2012-04-29 | |
| | ||||
* | ScriptOutput.m: Add schedule string | Ian Hinder | 2012-04-27 | |
| | | | We probably want to be able to express all that is needed without resorting to a Cactus schedule string. | |||
* | ScriptOutput.m: Add comments for unsupported Calculation options | Ian Hinder | 2012-04-27 | |
| | ||||
* | ScriptOutput.m: Remove PartialDerivatives comment | Ian Hinder | 2012-04-27 | |
| | ||||
* | ScriptOutput.m: Add derivative definitions | Ian Hinder | 2012-04-27 | |
| | ||||
* | ScriptOutput.m: Improve parenthesisation | Ian Hinder | 2012-04-27 | |
| | ||||
* | ScriptOutput.m: Support several options and flags | Ian Hinder | 2012-04-27 | |
| | | | | Also write comments into the output file containing unsupported options | |||
* | Move script flags variable into Kranc.m | Ian Hinder | 2012-04-27 | |
| | ||||
* | Add TriggerGroups to the list of options supported by a calculation. | Barry Wardell | 2012-04-27 | |
| | ||||
* | Fix incorrectly thrown error message when a calculation does not need to be ↵ | Barry Wardell | 2012-04-27 | |
| | | | | split. | |||
* | ScriptOutput.m: Add variables and temporaries | Ian Hinder | 2012-04-26 | |
| | ||||
* | ScriptOutput.m: Correct indices in KroneckerDelta | Ian Hinder | 2012-04-26 | |
| | ||||
* | Calculate mixed derivatives as repeated first derivatives | Erik Schnetter | 2012-04-25 | |
| | | | | This is controlled by a new calculation option SeparatedDerivatives2. It reduces the number of floating point operations and converts a large 2D stencil into a 1D stencil. This is possible when the first derivatives are stored in grid functions, and then they are computed in ghost zones. This is currently only true for CaKernel, not for the standard CPU code. | |||
* | Support vectorisation in simple code generator | Erik Schnetter | 2012-04-25 | |
| | ||||
* | CaKernel.m: Use BoundaryCalculationQ to determine which template to use | Ian Hinder | 2012-04-25 | |
| | ||||
* | Calculation.m: Add BoundaryCalculationQ | Ian Hinder | 2012-04-25 | |
| | ||||
* | Schedule.m: Only use a schedule alias if necessary | Ian Hinder | 2012-04-25 | |
| | | | This was supposed to have been committed before. | |||
* | KrancThorn.m: Only generate hybrid code if UseCaKernel is True | Ian Hinder | 2012-04-25 | |
| | ||||
* | Calculation.m: Wrap split derivative/non-derivative calculations in a ↵ | Ian Hinder | 2012-04-23 | |
| | | | | schedule group | |||
* | Calculation.m: Wrap split calculations in a schedule group | Ian Hinder | 2012-04-23 | |
| | ||||
* | Add and use GetCalculationScheduleName | Ian Hinder | 2012-04-23 | |
| | | | A calculation has a name, stored in its Name entry. This is what is used when generating the code files, and is what users can use to do relative scheduling (before, after, etc). Sometimes (e.g. for CaKernel), the routine scheduled with the Cactus scheduler in schedule.ccl needs to have a different name. This is what is returned by GetCalculationScheduleName. We now always schedule such functions "<schedulename> as <name>" where <name> is the real name of the calculation. | |||
* | CaKernel.m: Wrap host/device routines in a schedule group | Ian Hinder | 2012-04-23 | |
| | ||||
* | Add the ability for calculations to define additional Cactus schedule groups | Ian Hinder | 2012-04-23 | |
| | ||||
* | CaKernel.m: Rename host calculations to have a HOST__ prefix | Ian Hinder | 2012-04-23 | |
| | ||||
* | ScriptOutput.m: Add rudimentary line-breaking | Ian Hinder | 2012-04-20 | |
| | | | | This will have to be improved later | |||
* | ScriptOutput.m: Align equations on '=' signs | Ian Hinder | 2012-04-20 | |
| | ||||
* | ScriptOutput.m: Eliminate spurious DefFns | Ian Hinder | 2012-04-20 | |
| | ||||
* | ScriptOutput.m: Express derivatives by their correct names | Ian Hinder | 2012-04-20 | |
| | ||||
* | ScriptOutput.m: Correct syntax for repeated indices in the same position | Ian Hinder | 2012-04-20 | |
| | ||||
* | ScriptOutput.m: Use writeExpression instead of type-specific versions | Ian Hinder | 2012-04-20 | |
| | ||||
* | ScriptOutput.m: Implement more of the script generator | Ian Hinder | 2012-04-20 | |
| | ||||
* | Helpers.m: Create intermediate directories in EnsureDirectory | Ian Hinder | 2012-04-18 | |
| | ||||
* | Output a Kranc script for every generated thorn (work in progress) | Ian Hinder | 2012-04-18 | |
| | | | This is conditional on the new option GenerateScript |