-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Populate the FORM Cookbook #409
Comments
Great idea! Is there some moderation procedure for the submitted snippets? I also have a collection of private snippets, but I'm not sure that those are that efficient/useful as compared to what |
Since it's a bit hard to accept pull requests on the wiki, I propose that contributors post their snippets here and we can integrate them into the wiki if it's suitable. Don't hesitate to post any snippets! If we find a better way to achieve the same result, we can discuss that here and we all learn 🙂 |
https://github.com/vermaseren/form/wiki/FORM-Cookbook#loops-with-sorts-inside= This one won't run in parallel with tform unless you use a construction like https://www.nikhef.nl/~form/maindir/documentation/reference/online/online.html#SECTION001930000000000000000 (Or rather, not run efficiently -- in practice I never found much difference, but the user manual mentions it explicitly.) It's a good idea, I'll try to collect some snippets at some point! |
I found what the reference manual says for ParFORM may be misleading... Indeed, for the So, the sentence "the variable has to be sent to the master process (PARFORM)" is correct but only once and the parallelization must work well with ParFORM. On the other hand, assigning $-variables in TFORM also uses locks. Each lock is only for one variable so that the averaged collision rate becomes smaller when many variables are randomly accessed. But if there is only one variable that will be redefined by many threads, as in this example, I don't see much advantage over the redefine statement (except the fact that the |
It's a bit weird that TFORM uses locks to assign to dollar variables that are thread-local. |
In the current implementation, |
OK, I was a bit wrong. For the "local" $-variables ( |
It just crossed my mind that there are undocumented preprocessor variables With
Though these preprocessor variables are undocumented and so maybe deprecated, I think the use of them should not cause any slowdown in parallelization (the flags are always updated anyway). |
I didn't know about |
I've started the Form Cookbook that contains useful recipes (and workarounds for some shortcomings) that may be hard to come up with for new users. I encourage all users to also submit snippets, so that we get a more comprehensive documentation.
The text was updated successfully, but these errors were encountered: