[squeak-dev] Bibi, a Scratch port to recent Squeak
Juan Vuletich (mail lists)
juanlists at jvuletich.org
Wed Feb 27 11:14:11 UTC 2013
Hi Tim, Bert,
I just couldn't resist (more below).
Quoting "Juan Vuletich (mail lists)" <juanlists at jvuletich.org>:
> Quoting tim Rowledge <tim at rowledge.org>:
>
>>
>> On 23-02-2013, at 5:58 AM, "Juan Vuletich (mail lists)"
>> <juanlists at jvuletich.org> wrote:
>>> What tinyBenchmarks performance do you get?
>>
>> My Pi does about 42Mbc/s and 1.4Msn/s
>
> Thanks.
>
>>>
>>> I use Cuis all the time on an Atom netbook (Cog, 29Msends/sec,
>>> 180Mbytecodes/sec). Cuis is nice to use here.
>>>
>>> From time to time, I run it on my XO (300MHz Geode, Cog,
>>> 6.2Msends/sec, 39Mbytecodes/sec). Cuis is pefectly usable here.
>>> Sometimes I also run it on a PIII with a CPUKiller app, that
>>> brings performance down to XO levels.
>>>
>>> Using slower machines is really useful. It really helped me find
>>> code that really deserved some optimization. The result is that,
>>> even if it looks cool, Cuis is usable on slow hardware?
>>
>> Try to get a Pi sometime. You'll adore the sheer cuteness of having
>> a machine that small and raw to play with. Download RISC OS and
>> enjoy a *really fun* operating system as well.
>
> Yes, I'd get one some day.
>
>>> Have you tried Cuis on the Pi? Could you please do it and comment
>>> on the experience?
>> It is certainly a good approach; even on the Pi it is bearable. I'm
>> doing some work on how to boost the bitBLT performance right now
>> (which is not so hot) and that would make a big difference.
>> Eventually I hope to get the Cog vm working on it as well.
>> But the real key is always better written systems code. Morphic has
>> always seemed to have horrible scaling issues - with one window
>> open it can be ok, open a dozen and it gri nds to
>> a h h aa l t.
>> A long time ago Andreas made a benchmark that timed opening a
>> couple of dozen browsers and it was possible even on a fast machine
>> (of the day, so say 25% of the fast machines now) to see how the
>> last few took so much longer. If anyone can fix that problem life
>> would be a lot better. By contrast, open an MVC project and use a
>> couple of dozen browsers. No performance problem there...
>
> WRT this, I redid the rectangle merge & invalidate logic in Morphic.
> With this, resizing windows with more than 10 windows open became
> about ten times faster in my tests.
>
>>> BTW, if needed, you can evaluate 'Preferences slowMachine' to
>>> trade looks for responsiveness.
>>
>> That does help a little. It does still take a good 1sec+ top open
>> the workspace text editing menu and at least 5 sec to open a browser.
>
> Mhhh. This is to much. Just went to the P-III with Cpukiller 3
> killing 70% cpu. This way, I get 32Mbytecodes/sec and 1.3Msends/sec,
> comparable with the raspi. This way, using a stack interpreter (not
> Cog), doing [ BrowserWindow openBrowser ] timeToRun takes 3.8 secs
> on Cuis 4.1 and 0.2 secs on Cuis 4.0.
>
> This is because in Cuis 4.1 I converted Morphic to use Float
> coordinates that are local to the Morph, and using MatrixTransform2x3.
>
> All I can say is, please use Cuis 4.0 and not 4.1 on slow hardware...
>
>> tim
>> --
>> tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
>> Strange OpCodes: ARG: Agree to Run Garbage
>
>
> Cheers,
> Juan Vuletich
>
>
>
I couldn't help it. Spent some time on the 300MHz equivalent P-III and
found it. The culprit wasn't Float coordinates, but a couple of bugs I
introduced with those changes. Please grab
https://github.com/jvuletich/Cuis/blob/master/Cuis4WithLatestUpdates/Cuis4.1-1619.zip?raw=true or the updates from same Git
repo.
Cuis 4.1 now opens windows as quickly as Cuis 4.0, i.e. as quickly as
Scratch, and at least 5 times faster than Etoys or Squeak.
Thanks for the feedback!
Cheers,
Juan Vuletich
More information about the Squeak-dev
mailing list
|