Re: Wow... (<-- blown away at performance)

From: Alexander Best <arundel_at_freebsd.org>
Date: Tue, 22 Feb 2011 20:31:34 +0000
On Tue Feb 22 11, Garrett Cooper wrote:
> On Tue, Feb 22, 2011 at 2:10 AM, Eir Nym <eirnym_at_gmail.com> wrote:
> > On 22 February 2011 11:15, Garrett Cooper <yanegomi_at_gmail.com> wrote:
> >>    I don't know what to say, but r218938 screams with flash videos
> >> (native Linux speed). Not sure if it's the new binutils or if it's the
> >> new linuxulator patches, but I can run multiple instances of youtube
> >> in parallel (5 total with other miscellaneous flash animation) without
> >> it totally lagging out Firefox/X11, and it appears to close the
> >> instances of firefox properly now. Hopefully this version fares better
> >> than r218113 did (I think I hit a kernel bug after 2 weeks uptime,
> >> where my system just hardlocked for no apparent reason).
> >>    Anyhow, hope others have similar results.
> >> Cheers!
> >> -Garrett
> >>
> >> $ uname -a
> >> FreeBSD bayonetta.local 9.0-CURRENT FreeBSD 9.0-CURRENT #0 r218938M:
> >> Mon Feb 21 23:10:51 PST 2011
> >> gcooper_at_bayonetta.local:/usr/obj/usr/src/sys/BAYONETTA  amd64
> >
> > Which FlashPlayer version do you test? Adobe has made significant
> > performance changes in 10.2 (from 10.1). You can search for StageVideo
> > performance to learn more about. Youtube already use them since 10.2
> > beta
> 
>     linux-f10-flashplugin-10.1r102.65 . The performance increases are
> claimed to be "up to 85%" on the Stage Video site, but I'm seeing a
> more than 200% increase (now it actually scales between multiple
> instances, instead of croaks with one instance, tiling up and down the
> screen when moving the window slider for instance or switching tabs).
> Besides, it seems like it needs external support from the video
> driver, and I'm not sure that that bridge exists in the linuxulator.
>     Also, it looks like npviewer.bin still hangs to resources on until
> Firefox closes (or I kill it :)..), so something still needs to be
> resolved there, but that isn't a regression (it's acted that way for
> ages), and shouldn't be too hard to do.

i think the problem with npviewer.bin having to be killed by hand is a futex
issue in combination with a high number of threads. this is the output of a
test from darren hart's futex test suite under freebsd 9.0:

futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=1
Result: 18622 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=2
Result: 15469 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=3
Result: 12713 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=4
Result: 12247 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=5
Result: 11814 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=6
Result: 13468 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=8
Result: 12061 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=10
Result: 12854 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=12
Result: 12999 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=16
Result: 12402 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=24
Result: 9815 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=32
Result: 8518 Kiter/s
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=64
	ERROR: Resource temporarily unavailable: pthread_create
Result: ERROR
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=128
	ERROR: Resource temporarily unavailable: pthread_create
Result: ERROR
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=256
	ERROR: Resource temporarily unavailable: pthread_create
Result: ERROR
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=512
	ERROR: Resource temporarily unavailable: pthread_create
Result: ERROR
futex_wait: Measure FUTEX_WAIT operations per second
	Arguments: iterations=100000000 threads=1024
	ERROR: Resource temporarily unavailable: pthread_create
Result: ERROR

cheers.
alex

> Thanks,
> -Garrett

-- 
a13x
Received on Tue Feb 22 2011 - 19:31:34 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:11 UTC