by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Aug 14 19:53
    cuviper edited #785
  • Aug 14 19:46
    cuviper opened #785
  • Aug 14 16:31
    sakridge opened #784
  • Aug 13 20:58
    bors[bot] closed #746
  • Aug 13 20:58

    bors[bot] on master

    adjust sleep module API to have… port to the new log api This i… remove JobPoppedRhs event and r… and 31 more (compare)

  • Aug 13 20:51

    bors[bot] on staging.tmp

    (compare)

  • Aug 13 20:51

    bors[bot] on staging

    adjust sleep module API to have… port to the new log api This i… remove JobPoppedRhs event and r… and 31 more (compare)

  • Aug 13 20:51

    bors[bot] on staging.tmp

    adjust sleep module API to have… port to the new log api This i… remove JobPoppedRhs event and r… and 31 more (compare)

  • Aug 13 20:51

    bors[bot] on staging.tmp

    [ci skip][skip ci][skip netlify] (compare)

  • Aug 13 19:44
    cuviper synchronize #746
  • Aug 12 18:41
    cuviper labeled #782
  • Aug 12 16:23
    cuviper labeled #782
  • Aug 12 16:23
    chrivers opened #783
  • Aug 12 15:14
    pkolaczk opened #782
  • Aug 05 15:38
    DzmitryFil edited #781
  • Aug 05 11:08
    DzmitryFil opened #781
  • Aug 04 10:11
    nikomatsakis synchronize #746
  • Aug 03 19:55
    DzmitryFil closed #780
  • Aug 01 20:18
    DzmitryFil edited #780
  • Aug 01 19:44
    DzmitryFil opened #780
Josh Stone
@cuviper
if you know nothing else will be pushing/popping, that should be fine
they won't be in order, of course
Zhengyi Yang
@zhengyi-yang
Okay. Got it. Thanks so much!
Niko Matsakis
@nikomatsakis
@cuviper btw we're going to have to find a better time for the sync, this particular time doesn't work for me anymore
Josh Stone
@cuviper
@nikomatsakis I don't have many scheduled meetings, so please suggest times that work for you. maybe a doodle?
Niko Matsakis
@nikomatsakis
@cuviper ok
Zhengyi Yang
@zhengyi-yang
Hello guys, does someone know if the order will be reserved if I call vec.into_par_iter().flat_map().collect::<Vec<_>>()
And if the order doesn't matter, can I do collect faster?
Josh Stone
@cuviper
@zhengyi-yang collect does preserve order, at least for ordered collections like Vec
if you don't care about order, maybe some kind of concurrent vector would be faster, which you could push in a for_each, but I don't have specific recommendations
flat_map is kind of awkwardly handled in rayon, since we split that in parallel too -- it may over-split your data and make it move data a lot to collect it back
sometimes you may do better with a custom fold/reduce
Zhengyi Yang
@zhengyi-yang
@cuviper Got it, thanks Josh
Niko Matsakis
@nikomatsakis
Man I'm so sad I apparently never pushed to https://github.com/nikomatsakis/rayon-plot
I wonder if some old computer of mine might have a checkout
I was looking @cuviper just a bit into the sort performance but nothing jumped out at me yet
Christopher N. Hesse
@raymanfx
Hi everyone. I'm looking for feedback similar to the case of rayon-rs/rayon#699, but didn't want to necro that old "issue". Basically, I'd like to parallelize the following (outer) loop: https://github.com/raymanfx/ffimage/blob/next/src/packed/convert.rs#L18. Now I'm not sure how to do that. I implemented iterators that hand out mutable pixel references, so I could iterate through the target image buffer. But then I don't have the pixel coordinates anymore which I need to transform the source pixel. I tried zipping the mutable target and the immutable source pixel iterators, but did not succeed that way. I'd appreciate if someone could give me a hint here.
  • adding to the above: I'd like to perform the conversion in memory, so don't want to collect the converted pixels in a Vec and then overwrite the image pixels with the ones from that vec
Niko Matsakis
@nikomatsakis
@cuviper so do you have any sense for how we ought to proceed with "the branch"?
I'm feeling a bit stuck :/
I dont' feel great about the perf results, it'd probably be good to drill a bit more into which ones we care about
I guess if you're interested, I might be game to schedule some time to screen share and do a bit of joint investigation :)
not sure if that's something that "pairs well"
also would Tuesdays at 15:30 Eastern time (12:30 Pacific) work for you as a sync slot?
Josh Stone
@cuviper
@nikomatsakis sorry I missed this. Tuesdays at 12:30 Pacific will be fine for me
for the branch, I don't know -- I'm almost inclined to just SHIP IT :rocket:
but we should probably make sure that it at least still improves the idle case it's targeting
(make sure the redesigns haven't lost that property)
Niko Matsakis
@nikomatsakis
@cuviper ok let me add something to the calendar. Regarding the branch, I kind of feel the same way.
Like, let's land it, maybe do an alpha release and encourage people to test
but yeah let's verify that we're solving the problem we set out to solve first I guess
I definitely feel like it'd be awesome if we could draw some eyes, maybe some poeple can come up in and optimize things
living on a PR is no way to live
Luca Barbato
@lu-zero
I can test it today
btw is there a way to move from a parallel iterator to a serial iterator without having a collect() in between?
Josh Stone
@cuviper
@lu-zero there's no builtin way to go parallel to serial. A channel might work, if you don't care about order.
Luca Barbato
@lu-zero
I care about order thus why I wanted that kind of adaptor ^^
meanwhile I have some data on ARM, our usual test encode is just slightly faster there
Josh Stone
@cuviper
well the issue for serial conversion is #210
faster is good :)
Luca Barbato
@lu-zero
:)
it seems so
more data tomorrow
and I will try on power as well
Luca Barbato
@lu-zero
On another machine I see no difference between the two for a similar test
Luca Barbato
@lu-zero
Setting delta rayon
Speed 10 Tiles 4 0.42%
Speed 10 Tiles 8 0.85%
Speed 10 Tiles 16 6.93%
Speed 8 Tiles 4 0.09%
Speed 8 Tiles 8 0.71%
Speed 8 Tiles 16 4.37%
Speed 6 Tiles 4 0.26%
Speed 6 Tiles 8 0.68%
Speed 6 Tiles 16 4.46%
This on x86
Luca Barbato
@lu-zero
Setting nightly stable
Speed 10 Tiles 4 0.42% -0.17%
Speed 10 Tiles 8 0.85% 1.75%
Speed 10 Tiles 16 6.93% 6.27%
Speed 8 Tiles 4 0.09% -0.36%
Speed 8 Tiles 8 0.71% 0.73%
Speed 8 Tiles 16 4.37% 1.71%
Speed 6 Tiles 4 0.26% 0.27%
Speed 6 Tiles 8 0.68% 0.95%
Speed 6 Tiles 16 4.46% 2.05%
Now both with current nightly rust and stable
Luca Barbato
@lu-zero
Setting    delta nightly    delta stable
Speed 10 Tiles 4    12.68%    12.88%
Speed 10 Tiles 8    14.85%    15.30%
Speed 10 Tiles 16    16.37%    16.92%
Speed 8 Tiles 4    8.18%    8.57%
Speed 8 Tiles 8    10.93%    11.19%
Speed 8 Tiles 16    12.47%    13.16%
Speed 6 Tiles 4    7.83%    8.21%
Speed 6 Tiles 8    10.77%    11.31%
Speed 6 Tiles 16    12.36%    12.76%