If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Making More Informed Linux Hardware Choices

02-27-2011, 12:40 PM

Phoronix: Making More Informed Linux Hardware Choices

Matthew Tippett and I talked this weekend at the Southern California Linux Expo on the matter of making more informed Linux hardware choices. While Linux hardware support has come along way, it is not perfect and there are still shortcomings. However, with Phoronix Test Suite 3.0 and OpenBenchmarking.org, which were released in Los Angeles, we believe there are now the capabilities to dramatically enhance the Linux hardware and software experience. These freely available tools are not only a game-changer for Linux, but have the capabilities to impact how projects and organizations handle their Windows, Mac OS X, BSD, and Solaris testing as well.

The first graph in the linked picture is sqlite 3.7.3 and the second is apache 2.2.17, but the two graphs graphs do not really make sense to me when looked at together. The difference between "20gb partion" and "normal" and the others in the sqlite graph is not replicated in the apache graph. The change in performance is more than ten-fold. Is there a simple reason for this?

Comment

One thing that I cringe at when I see talk about hardware support in linux is the "most hardware works out of the box". It seems that the term "works" is on a different playing field then it is on the big mainstream OS's. All to often "works" when talking about hardware in linux means "base functionality only". A perfect example of this is sound cards. Take the x-fi driver for example, it "works" but offers nothing really then what any other on board sound solution. No real DSP functionality or even proper passthru capability let alone something as exotic as MIDI functionality, EAX, etc. Same goes with many other devices such as printers, motherboard features, tv cards, video cards, bluetooth devices, wireless, etc. The sad part is that most of those "extra features" will never be available on linux because of patents, licenses and it's reluctance to accommodate binary solutions could make those features available.

Comment

I think Linux Foundation should support OpenBenchmarking.ORG strongly, it's a very good Linux promoter and can lead to improve the hardware support in the future.

I hope those future plans get ready soon and axceed the initial goals.

Also, I would like to see Phoronix/PTS/Phoromatic to look into other stuff you mentioned and more into that. Maybe you would need a bit bigger staff or assistance from the Linux ecosystem (companies, foundations) to make it full of diversity...

- Printers (mentioned): Currently a gray situation. While CUPS exists, it's owned by Apple Inc. and not all drivers get open-source of some of them has exclusive features in the propietary version for MacOS X. Also, Linux configuration seems to be not so easy.
- Scanners (a very weak point, SANE project needs more fuel and being Foundation backed. Lots of very interesting scanners useschip controllers from taiwanese/chinese companies has technical documentation available and nobody does the driver). Use of SANE for desktop environments is also not so good, lacking proper integration with some desktop environments in terms of usability and easy configuration.
- Sound cards: As mentioned, there are support but it degree in quality and features. There are a few proffessional ones good supported by Linux, like the RME products.
- RAID/SAS controllers
- Network controllers: IEEE 802.11 (aka WiFi), IEEE 802.16 (aka WiMax), 802.3 (Ethernet standards)...
- Different bus controllers, meant for specific proffessional targets (electronics, embedded software development, scientific research...)
- Etc.

Also, I would like to see Phoronix/PTS/Phoromatic to look into other stuff you mentioned and more into that. Maybe you would need a bit bigger staff or assistance from the Linux ecosystem (companies, foundations) to make it full of diversity...

- Printers (mentioned): Currently a gray situation. While CUPS exists, it's owned by Apple Inc. and not all drivers get open-source of some of them has exclusive features in the propietary version for MacOS X. Also, Linux configuration seems to be not so easy.
- Scanners (a very weak point, SANE project needs more fuel and being Foundation backed. Lots of very interesting scanners useschip controllers from taiwanese/chinese companies has technical documentation available and nobody does the driver). Use of SANE for desktop environments is also not so good, lacking proper integration with some desktop environments in terms of usability and easy configuration.
- Sound cards: As mentioned, there are support but it degree in quality and features. There are a few proffessional ones good supported by Linux, like the RME products.
- RAID/SAS controllers
- Network controllers: IEEE 802.11 (aka WiFi), IEEE 802.16 (aka WiMax), 802.3 (Ethernet standards)...
- Different bus controllers, meant for specific proffessional targets (electronics, embedded software development, scientific research...)
- Etc.

A lot more should hopefully be coming soon...

For reference, where OpenBenchmarking.org is at right now, work on that code-base only began in August. Granted, it leverages a lot of code from PTS, Cekora, and Phoromatic, but OB/PTS3 came together quite quickly seeing as it's just been about five solid months (minus about three weeks for Oktoberfest and a few other days) and writing it all myself at I'd say averaging 50~60 hours per week on that code. So with that base in place and coming together quite quickly, much more should be possible soon.

Comment

I hope we won't have to do that more often in the future. But besides some VIA GPU stuff I rarely had to complain after I did extensive and loooong research before I bought anything.
Still a database where you find stuff would be nice. Especially when you can see if it uses binary blobs or free drivers. Virtual build a system sounds nice, too, if one is going to set up a completely new system. Though I guess in the field of mobile computers it needs a different solution. Sadly notebook models change quickly and you rarely know which chips they actually use. E.g. people trusted intel graphics to work and then fell into the poulso trap.