-
Notifications
You must be signed in to change notification settings - Fork 5
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
Create Tutorials “introduction-to-cilk-programming” #91
Create Tutorials “introduction-to-cilk-programming” #91
Conversation
✅ Deploy Preview for sage-licorice-6da44d ready!
To edit notification comments on pull requests, go to your Netlify site settings. |
4c81ede
to
16e7f12
Compare
5ac7a08
to
82cab90
Compare
82cab90
to
ed9a9c9
Compare
@cleiserson and @ailiop, would either/both of you be willing to please review my new tutorial, "Introduction to Cilk programming"? You will see that I opted for a short first tutorial -- which aims to introduce You can disregard the current featured image (trace-dag) for now. I will make a new featured image that shows some code in full-color close-up (as you see now on the site home page). Thanks for considering this! |
3a54c12
to
d40c224
Compare
hello this is a comment from Dorothy |
e0ebf3a
to
e4cfe66
Compare
Sure, I will take a stab at reviewing it. |
Some comments from @cleiserson
|
Thanks, Alex, for the update!
Dorothy
…On Wed, Aug 03, 2022 at 01:40:25PM -0700, Alexandros-Stavros Iliopoulos wrote:
> @cleiserson and @ailiop, would either/both of you be willing to please review my new tutorial, "Introduction to Cilk programming"?
Sure, I will take a stab at reviewing it.
--
Reply to this email directly or view it on GitHub:
#91 (comment)
You are receiving this because you commented.
Message ID: ***@***.***>
|
Thanks, @ailiop. I am going to make a few edits right now (this afternoon) and then turn it over to you for review. |
OK my edits are done. I tried to address comments from yesterday's meeting, and I also took a stab at tips on using "receiver variables." These tips are not part of the Intro to Algs primary source, and I don't have another good formal source, so I may be technically sloppy, but I think it's helpful to ground Cilk programming with these sorts of examples and tips. My $0.02. Thanks @ailiop for reviewing. |
1b9bf0c
to
aebcc28
Compare
@behoppe I just finished a pass over the tutorial. I was finding it difficult to make some of the comments I had in mind using GitHub's code review interface, so in the end I decided to simply attempt and commit a partial rewrite. This may make it difficult to pick and choose subsets of my suggested (i.e., committed) edits. If you feel parts (or the entirety) of my commit need to be reverted, I am happy to help make that happen. Here is a summary of the changes in my commit, apart from editing or rewriting paragraph text:
And here are some additional higher-level comments: (1) One downside of my edits is that they made the tutorial longer. I decided to not pare it down more aggressively before you got a chance to review the edits. My current thoughts on what could be cut down are:
(2) While I totally agree with the goal of keeping these tutorials succinct and focused, I am conflicted about leaving
I hope all this makes sense. :) |
Thank you, @ailiop, for your edits. I think the tutorial is much improved. I think the team will be reviewing this tutorial as part of today's meeting. (Right, @DorothyCurtis?) I am going to update the figure right now, and I look forward to sharing this tutorial with the team for their feedback. |
- Try to make sections more specific to their content - Move `cilk_scope` & `cilk_spawn` section after intro paragraphs - Create "common pitfalls..." section for danger/success examples - Attempt: logical vs actual parallelism in "how OpenCilk runs..." section - Discuss `cilk_scope` together with `cilk_spawn` in the `fib()` example - Introduce notion of a "parallel region" - Add some more defn keywords - sync, nested parallelism, logical parallelism, continuation - Paragraph-by-paragraph editing - Minor restructuring of example `fib()` code - Add note about `cilk_spawn`ing a block statement
Illustrate from processor-oblivious code, to compilation, to fast multiprocessor computation. The `{% img %}` will need to be wider to display this updated image appropriately.
This should be covered in a separate page.
85d2920
to
6ca5707
Compare
Alright, it appears that the rebasing is done and the conflict is resolved! For posterity, this entailed the following steps: 1. Find the offending commit(s)In this case, we could do that by filtering the git log of this PR branch to show only those commits that touched the conflicting image file. For example, in my local clone of the repo where I have checked out the git log -- src/img/fib-code-multicore.png Thankfully, this only yielded a handful of commits. 2. Understand the conflict.There were 3 commits in this PR that related to the conflict.
It seems like the error was deleting the image file from the branch as part of commit (1). This was then compounded by trying to fix the error with commits (2) and (3). The image was part of the So, the desired effect would be to make it as if the offending commits never happened, right? Well, almost. It turned out that commit (1) included some changes to the text in addition to the image deletion. What we want then, is to keep that part of commit (1) and remove commits (2) and (3) altogether. 3. Rebase (make it happen)We want to rebase our currently checked-out branch ( git rebase -i origin/main This opens up a text editor with a manifest of all commits in our PR branch and the command
Save, exit, and continue the rebase. When it reaches the ...and, fiinally, that's it. We can now force-push our local, rebased and conflict-free branch of the PR to the remote branch of the PR. Some parting thoughts
|
Thank you @ailiop!! |
Automatically generated by Netlify CMS