| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | Re: A 21st Century Apple II? |
mdj wrote:
> On Mar 6, 7:15 am, "Michael J. Mahon" wrote:
>> sicklittlemonkey wrote:
>>> On Mar 5, 8:35 pm, apple2fr...{at}gmail.com wrote:
>>>> This is true in theory; however in practice I have yet to experience
>>>> any Java program running more quickly (or with less memory) than an
>>>> equivalent C++ program on any platform.
>>> Experience away. I hope you'll excuse a C example:
>>> http://bytonic.de/html/benchmarks.html
>>> (Top right data cell.)
>> The problem with overall speed metrics is that they do not reveal
>> how much of the execution time is in the libraries vs. the calling
>> code.
>>
>> The table, in fact, suggests that improvements to the graphics
>> library were a prime component of the speed changes, and I'm guessing
>> that it was not written in Java.
>
> Actually, the differences are due to the code moving to the use of
> vertex arrays instead of calling vertexAdd() to build display lists.
> The OpenGL component is, as you point out, written in C, and Java
> provides a thin wrapper over it.
>
> The performance difference is due to the reduction in the number of
> 'native' method calls, which avoid the quite considerable overhead of
> (de)marshalling and synchronisation (Java only allows a native method
> to be called from one thread at a time).
>
> All it shows is that since the majority of the graphics "heavy
> lifting" is done by a third party API (much of which exists on a GPU
> these days) you can write your "game logic" in Java without adding
> considerable overhead.
>
> Carmack made a similar assertion a few years back after completing
> Doom III, and claimed that id's next engine would be written in Java
> instead of C
This is very similar to writing the fiddly interactive part of an app in
Applesoft and calling simple M/L subroutines to do most of the heavy
lifting--a time-tested method of getting the best of both worlds.
As long as most of the time is spent in efficient code, the sparsely
executed "outer" code can be written in an interpretive language with
little overall performance penalty and often a saving in space and
development time.
I do it all the time. ;-)
-michael
******** Note new website URL ********
NadaNet and AppleCrate II for Apple II parallel computing!
Home page: http://home.comcast.net/~mjmahon/
"The wastebasket is our most important design
tool--and it's seriously underused."
--- SBBSecho 2.12-Win32
* Origin: Derby City Gateway (1:2320/0)SEEN-BY: 10/1 3 34/999 120/228 123/500 128/2 140/1 222/2 226/0 236/150 249/303 SEEN-BY: 250/306 261/20 38 100 1404 1406 1410 1418 266/1413 280/1027 320/119 SEEN-BY: 393/11 396/45 633/260 267 712/848 800/432 801/161 189 2222/700 SEEN-BY: 2320/100 105 200 2905/0 @PATH: 2320/0 100 261/38 633/260 267 |
|
| SOURCE: echomail via fidonet.ozzmosis.com | |
Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.