Author Topic: Fools: a $99 "Minecraft Server" which it is not.  (Read 12836 times)

0 Members and 1 Guest are viewing this topic.

Offline tszaboo

  • Super Contributor
  • ***
  • Posts: 7377
  • Country: nl
  • Current job: ATEX product design
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #25 on: October 12, 2015, 03:27:59 pm »
Damn you all.
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
Source: google. The company, not the search engine.
Uses 6 times the memory, runs 5,8 times slower on 64 bit.
Quote
We  find  that  in  regards  to  performance,  C++  wins  out  by a  large  margin
BTW I actually run Minecraft on my PC,it is going to be terrible with this hardware. If you dont believe me, read the comments on KS few months from now.
 

Offline grumpydoc

  • Super Contributor
  • ***
  • Posts: 2905
  • Country: gb
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #26 on: October 12, 2015, 03:44:06 pm »
It's all java.

And? Java just so happens to run some of the biggest datacenter applications and websites. Well optimized Java application can be both quick and quite frugal with memory today. This really is of little relevance.
Surely you must be joking. Java is a bloatware. You type down new int and it reserves you 4 kB of RAM, and the garbage collector will take care of it. The only reason that any software is written in Java, is because it is easier to find some code monkey for half the price than some decent programmer for C++.

You know how annoying it is when someone starts bloating about a subject they have no clue about? You're kinda doing that right now.
Well written Java is fine, however not all Java is well written (this is true of all programming languages, of course).

One of my biggest headaches was rescuing a SNMP simulation project written in Java. Management had been sold on the JDMK (basically a Java library for building and accessing SNMP MIBs) because they were told it was "light weight".

Well, it might have worked for a single MIB with a few 10's or even 100's of OIDs but we wanted to simulate the management interface of 1000's or tens of 1000's of instances of a complex MIB - it totally fell over because of huge memory requirements (which is when I was handed the mess and told "please make that work").

It turned out the library had lots of deep copies of lots of things, especially strings, for every OID instance resulting in 100's of MB of RAM for every MIB - the real kit was an embedded system with 64M with the result that the simulation had basically been sized with 64M x No of MIBS worth of RAM. That in itself seemed reasonable when I looked at the project specs - I mean who wold expect it would take more RAM to simulate something than the real device actually had?

I wound up running the library through a decompiler and rewriting huge chunks of code to get the memory requirements down to something sensible. I managed it but I'm afraid it somewhat tainted my view of Java for large projects ever since.
« Last Edit: October 12, 2015, 03:49:16 pm by grumpydoc »
 

Offline grumpydoc

  • Super Contributor
  • ***
  • Posts: 2905
  • Country: gb
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #27 on: October 12, 2015, 03:47:26 pm »
Damn you all.
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
Source: google. The company, not the search engine.
Uses 6 times the memory, runs 5,8 times slower on 64 bit.
Quote
We  find  that  in  regards  to  performance,  C++  wins  out  by a  large  margin
BTW I actually run Minecraft on my PC,it is going to be terrible with this hardware. If you dont believe me, read the comments on KS few months from now.
Did you make sure that the Java VM had a decent amount of RAM and turn on incremental GC?

I ran a MC server on quite modest hardware - a Foxconn Nettop which had an Intel ATOM 535 IIRC - and it was OK for a couple of users once I enabled incremental GC. Utterly hopeless without as there were huge pauses while the garbage collector ran.
 

Offline hendorog

  • Super Contributor
  • ***
  • Posts: 1617
  • Country: nz
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #28 on: October 12, 2015, 06:53:19 pm »
Damn you all.
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
Source: google. The company, not the search engine.
Uses 6 times the memory, runs 5,8 times slower on 64 bit.
Quote
We  find  that  in  regards  to  performance,  C++  wins  out  by a  large  margin

That is interesting - probably a good example that its possible to de-optimise java by making poor choices when performance is important.

Here is another quote from the same doc:
Quote
E. Java Tunings
Jeremy Manson brought the performance of Java on par
with the original C++ version
. This version is kept in the
java_pro directory. Note that Jeremy deliberately refused
to optimize the code further, many of the C++ optimizations
would apply to the Java version as well. The changes include:
• Replaced HashSet and ArrayList with much smaller
equivalent data structures that don’t do boxing or have
large backing data structures.
• Stopped using foreach on ArrayLists. There is no
reason to do this it creates an extra object every time,
and one can just use direct indexing.
• Told the ArrayList constructors to start out at size 2
instead of size 10. For the last 10% in performance, use
a free list for some commonly allocated objects.
 

Offline hli

  • Frequent Contributor
  • **
  • Posts: 255
  • Country: de
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #29 on: October 13, 2015, 06:07:24 pm »
Damn you all.
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
Source: google. The company, not the search engine.
Uses 6 times the memory, runs 5,8 times slower on 64 bit.
The memory you quote here is virtual memory, not the memory really used (there the factor is 3.7). I also found it interesting that there was no performance comparision between the optimized version (the speed differences were noted later on in the paper, but not all languages were treated equally here. And there was no mentioning how the optimized versions did use memory).

As someone writing Java applications for my day-job: when its about writing really performance-critical applications, or applications for resource-critical environment (think embedded) or where direct hardware access is needed, I would go to C (or maybe Go now). I even do this when working on my spare-time projects. But when its about getting the job done, or about large programs, use something else. And Java is not a bad contender here. Its quite possible to write Java with decent performance (though C might beat it in most cases). But when you want to write and maintain a large, long-running application it is much easier to do in Java than in C - there are just much less chances to do something wrong. When you bought apparel online in the last couple of years (jn  the US) you have a good chance to have seen a shop system running on Java (since this is what I do for a living).

Think of it that way: probably every major enterprise in the world has a software stack written comparable in size to, lets say, the Linux kernel. But probably most of the engineers that are capable of writing and maintaining such a big project in C already work on the kernel (and all the other ones work for the other companies then _need_ to use C). But nonetheless all the software stacks seem to run quite fine (though we all know the stories of TheDailyWTF). Java might not be the best language for the super-gurus out there (too much restrictions), but on the other hand it doesn't allow all the other ones to hang themselves (enough restrictions and a good safety net). And sometimes this is more important than the last percent of performance.

Regarding performance: there once was a project at HP called Dynamo (http://www.hpl.hp.com/techreports/1999/HPL-1999-78.html). Basically it was a PA-RISC virtual machine running on PA-RISC itself. Due to all the runtime optimizations the VM could do programs running on the VM (which did run on a PA-RISC itself) were faster that then programs running on PA-RISC directly.
 

Offline Rasz

  • Super Contributor
  • ***
  • Posts: 2616
  • Country: 00
    • My random blog.
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #30 on: October 13, 2015, 09:40:43 pm »
And? Java just so happens to run some of the biggest datacenter applications and websites. Well optimized Java application can be both quick and quite frugal with memory today


ahahaahaha thank you, I needed a good laugh

Who talks about hundreds of people on that server?  They are talking about 20 users maximum. It is a machine for bunch of friends to play on together, nothing more.

Also the specs of the device are, according to Cringely Sr.:

Quote
"They are both ARM-based. The Mineserver has four cores, a gigabit of RAM and runs at 1.5 GHz.

128 megabytes of ram? ;-) Dude knows his stuff.
Who logs in to gdm? Not I, said the duck.
My fireplace is on fire, but in all the wrong places.
 

Offline Cliff Matthews

  • Supporter
  • ****
  • Posts: 1910
  • Country: ca
    • General Repair and Support
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #31 on: October 14, 2015, 12:20:32 am »
I'm sure he meant a gigabyte of RAM. But if we push the java aside for the moment, I found in my experiment that MC aficionado's love Mod-packs, and in our family's case, they fight to get console control for generating new structures and spawning items (eg: weapons). Other thing that the die-hards like are texture packs, but these are client-side, so they only affect the local player.
Our config was: Win7, 2gigs, a quad-core Atom, very few services, and a gigabit NIC.

I just cant see it being anything but a failure at $99 (my son says maybe the $199 model has some merit, but the worlds can get big and with flash for storage, it would get slow too). 
 

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #32 on: October 14, 2015, 12:32:21 am »
I'm sure he meant a gigabyte of RAM. But if we push the java aside for the moment, I found in my experiment that MC aficionado's love Mod-packs, and in our family's case, they fight to get console control for generating new structures and spawning items (eg: weapons). Other thing that the die-hards like are texture packs, but these are client-side, so they only affect the local player.
Our config was: Win7, 2gigs, a quad-core Atom, very few services, and a gigabit NIC.

I just cant see it being anything but a failure at $99 (my son says maybe the $199 model has some merit, but the worlds can get big and with flash for storage, it would get slow too). 

What you (and a few other people talking irrelevant nonsense about Java bloat, etc) here don't realize is that you are comparing apples to oranges.

The ARM port of Minecraft is much smaller than the regular PC game, with restricted world size and resource usage, because it is derived from the Pocket edition (the one for Android and iOS), not the PC one. So your troubles running it on a PC are of little relevance - it isn't the same code and the same data sizes.

http://minecraft.gamepedia.com/Pi_Edition

Good that there are so many people bashing something as unusable even though they haven't seen it before ...
 

Offline Cliff Matthews

  • Supporter
  • ****
  • Posts: 1910
  • Country: ca
    • General Repair and Support
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #33 on: October 14, 2015, 01:11:46 am »
OK, we stand corrected. I just asked my youngest son about the pocket edition... he's tried it extensively and said one word before slapping his bloody, parent ignoring headphones back on -> FAIL.. (why do they talk this way? Geez Louise..)
 

Offline SopaXorzTakerTopic starter

  • Contributor
  • Posts: 15
  • Country: il
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #34 on: October 14, 2015, 06:14:11 am »
You seem to not get the point.
The box is running a server, which does not render graphics.
 

Offline SopaXorzTakerTopic starter

  • Contributor
  • Posts: 15
  • Country: il
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #35 on: October 14, 2015, 06:15:30 am »
OK, we stand corrected. I just asked my youngest son about the pocket edition... he's tried it extensively and said one word before slapping his bloody, parent ignoring headphones back on -> FAIL.. (why do they talk this way? Geez Louise..)

Kids talk like this because of extraordinary amount of memes they find on the Internet.
 

Offline eas

  • Frequent Contributor
  • **
  • Posts: 601
  • Country: us
    • Tech Obsessed
Re: Fools: a $99 "Minecraft Server" which it is not.
« Reply #36 on: November 12, 2015, 07:33:55 am »
Ok, but why do adults say "Geeze Louise?" Seriously? What does that even mean?

;)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf