Skip to content

Fix crash for aggregate types#8

Closed
arvid220u wants to merge 5 commits into
arvid/cilkforrangefrom
arvid/fix-aggregate-types-try-1
Closed

Fix crash for aggregate types#8
arvid220u wants to merge 5 commits into
arvid/cilkforrangefrom
arvid/fix-aggregate-types-try-1

Conversation

@arvid220u
Copy link
Copy Markdown
Owner

This seems to work, but is still kind of sketchy.

  1. What are cleanups and do we need to do cleanups in body.entry now?
  2. Will performance suffer when we move the loop var init code into body.entry, from the detach, potentially because of some sort of true sharing?

@arvid220u
Copy link
Copy Markdown
Owner Author

Problem! This has a race:

Running Cilksan race detector.
RUNNING TEST: daxpy_forrange (1000000 iters)
Race detected on location 7f72b2279ea0
*     Read 48e373 _Z14daxpy_forrangeSt6vectorISt4pairIddESaIS1_EEd microbenchmarks/daxpy.cpp
|        `-to variable __cilk_loopindex (declared at <no filename>)
+    Spawn 489d9a _Z14daxpy_forrangeSt6vectorISt4pairIddESaIS1_EEd microbenchmarks/daxpy.cpp
|*   Write 489e65 _Z14daxpy_forrangeSt6vectorISt4pairIddESaIS1_EEd microbenchmarks/daxpy.cpp
||       `-to variable __cilk_loopindex (declared at <no filename>)
\| Common calling context
 +    Call 48b7d6 _Z10daxpy_testPFvSt6vectorISt4pairIddESaIS1_EEdESsi microbenchmarks/daxpy.cpp
 +    Call 48ccb4 main microbenchmarks/daxpy.cpp
   Allocation context
    Stack object __cilk_loopindex (declared at <no filename>)
     Alloc 489adc in _Z14daxpy_forrangeSt6vectorISt4pairIddESaIS1_EEd microbenchmarks/daxpy.cpp
      Call 48b7d6 _Z10daxpy_testPFvSt6vectorISt4pairIddESaIS1_EEdESsi microbenchmarks/daxpy.cpp
      Call 48ccb4 main microbenchmarks/daxpy.cpp

Elapsed execution time: 1.773641 sec

Cilksan detected 1 distinct races.
Cilksan suppressed 1999999 duplicate race reports.

@arvid220u arvid220u closed this Apr 21, 2021
@arvid220u
Copy link
Copy Markdown
Owner Author

(see #9 )

@arvid220u arvid220u deleted the arvid/fix-aggregate-types-try-1 branch April 21, 2021 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant