• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Tim Cooke
  • Campbell Ritchie
  • paul wheaton
  • Jeanne Boyarsky
  • Ron McLeod
Sheriffs:
  • Paul Clapham
  • Devaka Cooray
Saloon Keepers:
  • Tim Holloway
  • Carey Brown
  • Piet Souris
Bartenders:

Linux - SUSE or Ubuntu?

 
Greenhorn
Posts: 26
Netbeans IDE
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
OK, lets get the apology out of the way first. To my shame, I've spent most of my life in the MS/Dos and Windows environments. I know next to nothing about Linux.

I want to get a Linux desktop for performance reasons. I'm writing a very processor-bound piece of software. I will be multi-threading so that I can make wring every ounce of processing power from a quad-core chip (possibly 2 x quad cores). Having gone to great lengths to keep my database completely in RAM and the code multi-threaded, I don't want to spoil it by having Windows running wasteful and idiotic services all over the place. I've been told that it is possible in Linux to create a 'dedicated' environment that gives all of the processor over to the program. Please comment if my understanding is valid or flawed.

Also, without wanting to start a religious OS war, could someone advise whether SUSE or Ubuntu would be better for a Linux noob like me? Is there any difference when it comes to using Java tools?

I bow down in respect to your experience and wisdom. Thanks in advance.

Tom
 
Sheriff
Posts: 22839
132
Eclipse IDE Spring Chrome Java Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Both SUSE and Ubuntu have services too, and they too require resources (processor cycles, memory). And yes, you can turn those off, but you can also turn off Windows services. Also, changing process priorities is possible on both Linux (nice command) and Windows (through the Task Manager). Granted, with Linux you can disable the GUI completely, but you'll have to do that yourself in both SUSE and Ubuntu.

If you want to have the kind of control you ask for, perhaps Slackware or Debian is a better option (less focused on the GUI). They are harder to install and configure though.


Anyway, moving to General Computing.
 
Author
Posts: 12617
IntelliJ IDE Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You'd be better served looking very closely at VM benchmarks, VM implementations, VM tuning, and multi-threading best practices than focusing on the OS.

I'm not saying that switching OSes won't end up being part of the solution, but it probably won't be the biggest bang for the buck.
 
best scout
Posts: 1294
Scala IntelliJ IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Tommy,

I've been working with Linux for almost 10 Years now because I like that you can easily start from zero and install and run only programs/services you really need. Of course this is more or less possible with Windows, too, like Rob said.

But even if Linux is a lot more user friendly than it was some years ago you have to pay a price to use an OS which is more configurable than Windows :-) It depends on how much you want to get from your OS of course. As long as everything works out of the box a modern Linux distribution like Ubuntu, SuSE or Debian will be easy to install (at least with standard hardware) and easy to configure for the basic things. But if things go wrong you may easily spend hours, days or weeks to figure out the problems if you don't have any experience with UNIX/Linux yet! This doesn't mean that this is a general problem with Linux but of course it CAN happen that something goes wrong and then I guess it will be harder to repair things with Linux. Just be warned :-)

The choice of a particular distribution depends on your experience and the things you're trying to do with the system. Do you need a GUI or just a server system? Will you need support service? I think Ubuntu or Kubuntu will be fine to start with. You can easily install it as a minimal server system or as a desktop system with a lot more features. I started with SuSE once but I don't like it any more which is more or less a personal choice. Personally I'm using Gentoo for the last few years and I'm very happy with it but this is definitely nothing you want to try as a beginner.

Besides these advices I really think that you should care about what David said! Choosing another operating system with which you don't have any experience probably will gain you nothing if you don't even know IF the OS is a bottleneck and where the bottleneck is. You can do really a lot of tuning on the layer of the OS with Linux and surely with Windows, too. But if it's your own application design which causes performance problems then no OS will help you very much The said Windows service for example may be annoying but as long as the do nothing they won't cost very much performance. If there's a memory bottleneck you can still turn the unused services off. Linux may be a little bit more minimalistic but with the distributions for "beginners" there will be some unnecessary services running, too, which you will have to turn off.

Anyway good luck with whatever you will be choosing!

Marco
 
Bartender
Posts: 2856
10
Firefox Browser Fedora Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
We have have forum dedicated to Linux discussions, I'll move this there.
 
Sheriff
Posts: 3064
12
Mac IntelliJ IDE Python VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I agree with David. You should take a look at OSGi as a way of speeding up your application first, then look at different platforms. That said, I have to believe that a non-GUI installation of Linux would be faster than Windows. Also you wouldn't have to reboot every few days.
 
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
There are lots of Linux distributions besides Ubuntu and SUSE. Have a look at DistroWatch for lots of information on many Linux distributions.

I like Ubuntu and use it as the main OS on my laptop. There are Linux distributions such as Arch Linux and Gentoo Linux in which you get a small base system, and you compile all the other software yourself from source code, which results in a system with software that is optimally compiled and configured for your specific hardware. But those Linux distros are definitely hard to set up and not recommended if you are a beginner with Linux.

Greg: OSGi is a way to modularize your application and to deal with large systems that have lots of dependencies etc. It's not something that will really help your Java programs run faster.
 
Greg Charles
Sheriff
Posts: 3064
12
Mac IntelliJ IDE Python VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Jesper Young wrote:Greg: OSGi is a way to modularize your application and to deal with large systems that have lots of dependencies etc. It's not something that will really help your Java programs run faster.



From: http://www.osgi.org/About/WhyOSGi:

Fast - One of the primary responsibilities of the OSGi framework is loading the classes from bundles. In traditional Java, the JARs are completely visible and placed on a linear list. Searching a class requires searching through this (often very long, 150 is not uncommon) list. In contrast, OSGi pre-wires bundles and knows for each bundle exactly which bundle provides the class. This lack of searching is a significant speed up factor at startup.

also

Lazy - Lazy in software is good and the OSGi technology has many mechanisms in place to do things only when they are really needed. For examples, bundles can be started eagerly, but they can also be configured to only start when another bundle is using them. Services can be registered but only created when they are used. The specifications have been optimized several times to allow for these kind of lazy scenarios that can save tremendous runtime costs.
 
Greenhorn
Posts: 15
BSD
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
First of all, I've been using openSuSE a lot for many years and have found it intuitive and fast.

Second, regarding your

I've been told that it is possible in Linux to create a 'dedicated' environment that gives all of the processor over to the program.



You can in fact customize your Linux to a point where it's using 640k of ram and 3,2 MB on your hard disk (though it won't look very impressive afterwards), but that requires a lot of expertise.
To make said task of customizing Linux a bit easier, Novell, the company which owns openSuSE, has begun to work on a tool named SuSE studio, which runs in the web browser. Using the tool, everybody with a bit of experience in Linux is able to create a really customized version of openSuSE for himself.
http://susestudio.com/

However, SuSE studio is still in Beta, and to get access, you've got to get an invitation. Well, I'm probably talking too much, just visit the site and find out for yourself.

Cheers,
Sam
 
Jesper de Jong
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
@Greg: Ok, so OSGi can make certain things faster, such as starting up your application. But it does not make Java bytecode magically run faster. Tommy is saying that he needs raw processor performance. OSGi is not going to help his Java program get more computing power out of his CPU.
 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I like Suse over Ubuntu but Ubuntu would be the better choice for a newbie because of the enormous amount of help available on the internet.
 
Jesper de Jong
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
"Chillytic Chillytic", welcome to JavaRanch.

Please check your private messages for an administrative matter from JavaRanch.
 
Ranch Hand
Posts: 308
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
i recently switched from suse (11) to ubuntu (9.04). main reason was the magnificent support (e.g. http://ubuntuforums.org/) and it handled better hardware out of the box (in my case hp dockingstation).
 
Rancher
Posts: 4804
7
Mac OS X VI Editor Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
While not one of your two choices (I've used SuSE and am typing this on Ubuntu 9.04) I run debian on my boxes where I want control. It can be installed to be nearly as user friendly as Ubuntu (which is built on Debian). Its also easy to turn off stuff that trades ease of use for performance.

But for serious performance, I just go buy a new computer. They get faster every few months. I'm typing this on a Core 2 Duo system, but I've got a quad system with 8GB on order and will get it late this week or early next week.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic