Skip to content
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

typos #65

Closed
spaette opened this issue Jul 30, 2024 · 1 comment
Closed

typos #65

spaette opened this issue Jul 30, 2024 · 1 comment

Comments

@spaette
Copy link

spaette commented Jul 30, 2024

delimit
negligible
potatoes
satisfied

The basis of the decision to use the string fais in the benchmark subdirectory files might welcome a clarification.

$ grep -nr delimite ConcurrentCollections.jl
ConcurrentCollections.jl/src/dict.jl:423:avoid stepping into other base cases by using an empty slot to delimite the base
$ grep -nr neglegible ConcurrentCollections.jl
ConcurrentCollections.jl/src/dlcrq.jl:222:# It looks like some non-neglegible amount of time is spent in
ConcurrentCollections.jl/src/dict.jl:24:# seems that the effect is neglegible. The performance is much better than
$ grep -nr potatos ConcurrentCollections.jl
ConcurrentCollections.jl/benchmark/hotpotato/run.jl:9:    potatos = []
ConcurrentCollections.jl/benchmark/hotpotato/run.jl:17:            push!(potatos, (; trialid, result, ntasks, impl = :dlcrq))
ConcurrentCollections.jl/benchmark/hotpotato/run.jl:20:            push!(potatos, (; trialid, result, ntasks, impl = :base))
ConcurrentCollections.jl/benchmark/hotpotato/run.jl:27:    return (; potatos, fais, repeat, duration)
ConcurrentCollections.jl/benchmark/hotpotato/plot.jl:9:potatos = map(rawdata["potatos"]) do info
ConcurrentCollections.jl/benchmark/hotpotato/plot.jl:39:datadf = vcat(DataFrame(potatos), DataFrame(fais); cols = :union)
$ grep -nr satisifed ConcurrentCollections.jl
ConcurrentCollections.jl/src/dlcrq.jl:62:            @goto satisifed
ConcurrentCollections.jl/src/dlcrq.jl:77:    @label satisifed
$ 

Was the author's intention is no longer used (without adding other mechanisms like ref counting)?

$ ed -s ConcurrentCollections.jl/src/dlcrq.jl <<<'222,229p'
# It looks like some non-neglegible amount of time is spent in
# `Vector{Waiter{T}}(undef, _)`, presumably zeroing out the elements.  A tricky
# part of this is detecting that the CRQ is no longer used. Since the CRQ may be
# closed just after the FAI and before the CAS on the slot is complete, (naively
# thinking) linear scan the `.ring` array is required for checking that the CRQ
# is not longer used (without adding other mechanisms like ref conting). So,
# ATM, only the newcrq that lost CAS is cached (which still helps the
# performance).
$ 

Was the author's intention mutated here?

$ ed -s ConcurrentCollections.jl/src/dlcrq.jl <<<'117,127p'
function trash!(w::Waiter)
    if assertion_enabled()
        old, success = @atomicreplace w.state WAITER_INIT => WAITER_TRASHED
        if !success
            error("unshared waiter mutaed: state: $old")
        end
    else
        @atomic :monotonic w.state = WAITER_TRASHED
    end
    w.task = nothing
end
$

The following shell script is authorised for use and/or modification by the repo Maintainers.

$ cat typos.sh
#!/bin/sh

# sed -i "s/conting/counting/g" ConcurrentCollections.jl/src/dlcrq.jl
sed -i "s/delimite/delimit/g" ConcurrentCollections.jl/src/dict.jl
sed -i "s/neglegible/negligible/g" ConcurrentCollections.jl/src/dlcrq.jl
# sed -i "s/mutaed/mutated/g" ConcurrentCollections.jl/src/dlcrq.jl
sed -i "s/neglegible/negligible/g" ConcurrentCollections.jl/src/dict.jl
sed -i "s/potatos/potatoes/g" ConcurrentCollections.jl/benchmark/hotpotato/run.jl
sed -i "s/potatos/potatoes/g" ConcurrentCollections.jl/benchmark/hotpotato/plot.jl
sed -i "s/satisifed/satisfied/g" ConcurrentCollections.jl/src/dlcrq.jl
$ 
@spaette
Copy link
Author

spaette commented Aug 20, 2024

closed due to age

@spaette spaette closed this as completed Aug 20, 2024
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

No branches or pull requests

1 participant