I like particularly the TED talks. They are creative, expose innovative ideas in the fields of science, art, education, technology, design and even spirituality. It is a great source of inspiration. Now with leopard I can also watch my TED podcasts on TV using the new frontrow application. This is awesome.
In The following talk, Ken Robinson talks about creativity and education in “Do schools today kill creativity?”.
I just put a new mix in the sound section, so check it out! The mix is encoded at 256 kbit/s, I hope that’s OK for streaming. It should be, at least with the present band width we have.
Extrabright Mix 01: House to techno with a pinch of trip-hop, from John Aquaviva to Mike Ink, from Da Minimal Funk to a revisited version of Dimitri of Paris’ famous Back in the Daze, to name just a few.
Last week I bought a consumption measurement device for 20 bucks. I wanted to know how much current is needed for various electronic devices I use at home, some of them on a 24/7 basis. I have got a home server running Linux, that I use as a NAS, print server, slim server (for streaming mp3 files to an mp3 device) and for experimenting a bit with Xen and Ubuntu. I have got also some other devices like a wireless access point (WRT54GL running Tomato), a cable modem, an external backup hard disk, a b&W laser printer and a few other electronic devices.
Of course, one of the most energy hungry device I have is the server, which is always switched on. I was expecting a consumption of about 60 W, because I tried to choose efficient components, some of which were listed on a review regarding a green computer consuming 54 W when idle. My hardware configuration is the following:
Processor AMD 64 x2 EE 3800+, dual core and energy efficient version (which is actually quite cheap)
Micro-ATX Mainboard M2NPV-VM with AM2 socket
2 GB of RAM (DDR2 PC4300)
2 Seagate 7200.8 250 GB hard disks used as a software RAID-1 array
Power supply ElanVital 500W, ATX, with 80% efficiency.
Plextor Plexwriter DVD burner
So I shut downed my server, plugged it in the measurement device and booted it. The value I could read on the device, after the reboot was finished and the server was idle, was higher than expected: 85 W. I was not very happy with that value and began to try to optimize it.
I first tried to remove the DVD burner, but I got just 2 W of reduction, which was not good enough.
Then yesterday I tried to install the last stable release of Ubuntu, which is Ubuntu 7.10 gutsy 32 bits version (I add previously Ubuntu feisty with a XEN enabled kernel). I was pleased to see that the server was only consuming about 68 W (DVD burner included). I then tried to re-install XEN and after rebooting saw that I was again at 85 W. So the XEN kernel had different options enabled that were not optimized for a good power management.
I got back to the stock kernel and tried to activate the automatic spin-down of the hard disks. I did this using the command
hdparm -S 60 /dev/sda
hdparm -S 60 /dev/sdb
which spins down the two disks after being idle for 5 minutes. I was able to grab a few watts and get down to 60 W, which is not too bad. I added the two commands in /etc/rc.local so that it gets executed automatically on boot.
I then tried to activate the automatic CPU frequency scaling, so that when the processor has a low usage, its frequency gets automatically reduced, hence saving some energy as well. I was getting some problems using the module powernow-k8, so I updated the bios to the latest version (1201), which resolved that issue. I could then install correctly the cpu scaling daemon. I just had to run
apt-get install cpufreqd
and then edit the file /etc/default/cpufreqd and insert “powernow-k8″ in the option CPUFREQ_CPU_MODULE (you can check which module you need to use here). With these two operations, the BIOS upgrade and the cpu frequency scaling, I was able to grab a few watts, getting down, when the server is idle, to about 53 W, which is already a lot better than the 85 W I was getting without tuning.
The options I might consider now are the following:
I could reduce significantly the power consumption if I automatically switch off the server every night. I am using it also to do a distant backup of another computer, but I could setup the BIOS to switch it on every night to do that, if it is not already the case. The only thing I would need to do is just to switch the server on, whenever I want to print something or hear mp3’s, which is not too bad. The server would then switch itself off at night, after doing the backup.
If I want to use XEN, I should compile my own patched kernel (for XEN) and tune the power management options to get the same consumption as on the stock kernel.
I could try to tune further the kernel options, which I am not sure that I am going to do, as it is much more convenient to use the stock kernel than to use a self compiled one (e.g. for updates).
I could try to find a way to cut off the consumption of some other electrical devices, which are most of the time not used or in standby mode, but do consume power anyway. Like for instance the laser printer (standby 14 W), the external backup hard disk Seagate 500 GB 7200.10 (standby 12 W), the wireless access point WRT54GL (always on, 14 W) or the cable modem (always on, 12 W). Not sure how I can do that. Of course I could plug some of these devices in a multi socket with a switch, but I would need to turn it on each time I want to access the internet using my laptop and turn it off afterwards (in addition it’s not compatible with my automatic distant backup). Not very elegant. I guess I will have to think about that issue.
I just stumbled upon that video giving an update about the bug catching tool goanna, project on which I worked in 2005-2006. There is apparently now a nice integration within the Eclipse IDE.
Small summary of a couple of projects seen during the second conference day:
eRCP (abbreviation of embedded Rich Client Platform): this version, which is a subset of RCP, is targetted towards mobile devices and is also based upon OSGi. eRCP bundles light version of components from RCP, like eSWT, eJFace and eWorkbench and eUpdate. OSGi and the JVM is tuned for mobile devices and therefore has a smaller memory footprint than for a normal OSGi application, along with some other optimizations and tweaks. The aim is to get the benefits from RCP, while slightly adapted for mobile devices: multiplatform, native look & feel and better compatibility between devices than MIDP.
eSWT (embedded SWT): I talked yesterday about RAP for AJAX application and RWT. eSWT is a similar project, but targetted this time for mobile devices. eSWT is also a subset of SWT and is split in 3 components for better memory usage: Core eSWT (required), Expanded eSWT and Mobile Extension eSWT, the two latter being optional. Like SWT, eSWT uses native widgets from the underlying operating system, although a difference is that much of the code within eSWT is native code, giving rise to much better performances than a basic wrapping of OS widgets (a critical factor for mobile devices). eSWT implementations exist already for a number of mobile device platforms, like Windows Mobile and Symbian series 80, among others. A version for Symbian series 60 is ongoing and should be released shortly, along with the corresponding SDK. During the talk, a demo of a simple news reader was made, where a version using SWT was running on a desktop computer, a second version using RWT was run as an AJAX application, and finally a version using eSWT was running on a mobile device. Impressive to see that a single code base can be used to produce 3 applications running each on a completely different platform, although at least small modifications of the code base are needed.
Ganymatic: there is a couple of challenges for building an Eclipse distro, mainly managing the dependencies and running basic tests to be sure that plug-in A does not break the API of plug-in B when combined. This project, based on the package manager Buckminster aims at making such a process easier by providing an integrated infrastructure. This would enable to generate a distro automatically by fetching the required base packages, installing recursively their dependencies, running a number of automated tests to be sure everything is in place, making the binary build and reporting possible errors. The project will be used in particular for next year Eclipse’s release called Ganymede.
BMW CarIT: Eclipse is here used as a platform along several lines. For instance an Autosar IDE has been realized based on Eclipse RCP (using technologies like EMF, GEF, OAW), providing a modeling tool for developing Autosar applications. There is also the embedded development in C++ done with Eclipse CDT, where a custom compiler has been quickly integrated, including error/warnings annotations, taking advantage of the openness and extensibility of Eclipse as an IDE. Some other projects regarding Eclipse have also been presented (like an automated deployment solution).
Medany Platform: this is a project developed in France on top of Eclipse RCP and eRCP. The idea is here to use mobile devices (PDA) to aquire medical data and synchronize them with some servers. eRCP is used on the mobile devices while RCP on the server. The project is heavily based on Model Driven Architecture (EMF, OAW) and some other Eclipse projects (WTP, DTP).
I am at the moment in Ludwigsburg, which is in the Stuttgart’s area, in Germany, for the annual Eclipse Summit 2007. This is actually a quite interesting conference in the effervescent and mainly open source field of Eclipse. Lots of different projects around the mother project Eclipse are being presented. There are actually lots of interactions between them. Check the Eclipse Summit page for more information as well as a live cast and the slides regarding the talks.
A little summary of some interesting projects seen today:
Erich Gamma presenting the Jazz project. A collaborative development environment. It provides a number of tools, which are integrated together, to enable a better collaboration in software development. I am seeing this a bit like a web 2.0 touch to software engineering, where the different developers have the opportunity to follow in real time the development of the whole tool: chat together using instant messenging, see a distributed task list of the project, send by drag and drop references to bugs or defects, see who is online at the moment to be able to address a given problem with that person directly, etc. The application is unfortunately not open source, but is of course based on Eclipse RCP.
An update regarding the Equinox or OSGI framework, which is an underlying framework and architecture on which Eclipse is based from the version 3.0.
An AJAX framework called RAP. This project aims at providing a target platform for deploying existing SWT applications, as AJAX apps, providing API’s (mostly) compatible with SWT. RAP or the RWT framework, as it is called, is in fact a subset of the SWT API’s. An application using the RWT target platform will be automatically translated into a web application upon execution, including javascript handling of the user events. It seems like a great idea to have a unique code base for an application, using either SWT or RWT depending on the deployment type. Although I am wondering how a seemless integration of the RAP application within the browser can take place: for the moment, the RAP application will have for instance its own windows, within the browser window, which I don’t find very nice. But in any case, a project to keep an eye on.
An update regarding JDT. I know I had read it in the release notes when Eclipse 3.3 was released, but I re-discovered the CTRL + 3 (Command + 3 on a Mac) shortcut. It does basically the same than Quicksilver or Spotlight on a Mac, just within Eclipse. Typing a short text, it does a search among all possible operations applicable to the situation. A great way to save time when launching operations (e.g. show the error log view or do a code cleanup).
GUIDancer: I find this name funny. This application basically enables to run tests of GUI based applications, at the moment just using Swing, although the version 2.0, which should be release to the end of the year, should support SWT and Web applications as well. A good complement to Unit Testing.
I will try to charge my laptop battery until tomorrow, so that I can give an update of the second day.
@Edit. I forgot to mention the EMF Compare project:
EMF Compare is a project started exactly one year ago at Eclipse Summit 2006. The aim was to privide model comparison capabilities, which were lacking at the time. One year later, a working prototype has been implemented. This enables, when using EMF for Model Driven Architecture, to be able to compare graphically two models, useful for instance when merging back to Subversion or CVS a modified version of a model. This project can be also used to compare graphically different XML files.
I have just seen in the blog dashboard the following activity log:
“Akismet has protected your site from 6,753 spam comments.”
Nice. There are some people out there that are quite nice and have useful things to comment on, I see. Hopefully I am using Akismet, a spam protection tool for Wordpress, that is using a webservice for comment validation. It actually works pretty well. I have just got a couple of spam comments lately, that I have anyway to approve before showing up.
I have just slightly updated the description page of pView, a photo gallery viewer I had programmed in 2004/2005. I have in particular added a few screenshots. Feel free to use this software if you like it.
Summary of its features:
Extremely easy to use: The photos within a folder are shown as thumbnail images, the sub-folders as sub-galleries.
Comments may be added for each picture in the administration page.
Possibility to navigate through the galleries/folder.
Each picture is supported in 3 sizes: original size (e.g. 4 or 10 mega pixels), full screen (i.e. 800×600) and thumbnail (i.e. 320×240), so no need to archive separately the photos you manage with pView.
Browsing between the pages inside a gallery (the number of pictures per page can be changed in the config).
Access control of the folder: possible to define a login/password for selected galleries.
Users’ management page: create, delete users and change their passwords.
The design of the galleries is done through a generic html template that can be changed. In addition, if an html template is present in a particular folder, it will be used instead of the default template (customization of particular galleries).
Automatic generation of the thumbnails through a shell script (I know, it would be better to have an on the fly generation of the thumbnails, should come in a future version).
As a few of you probably already know, I am using a car to go to work from my home in Zurich to Baden. This for a main reason, it’s faster than using the train. By public transportation, the trip lasts 1 hour door to door, one way, while using the car it lasts just 30 minutes. At the end of the day, literally, I am gaining 1 hour. But of course, by car I am less environmental friendly than using public transportation, which I am aware of.
Browsing the net, I stumbled upon the website of a Switzerland-based company, myclimate.org, active in the domain of climate protection and CO2 compensations. The idea is quite interesting and simple: try to get environmental friendly by avoiding carbon emissions, while buying carbon credits for the emissions that cannot, for some reason, be avoided. The collected money is then invested in projects around the world, which aim at reducing the carbon emissions, e.g. the construction of a wind park in Egypt, which will avoid using a coal plant for producing electricity.
So here we go. I calculated the CO2 emission caused by my car use for going to work, which corresponds to about 11′000 Km a year with a car consuming 7 l/100 Km. This gives 2.35 tons of CO2 a year. Not kidding! Although there is just 25 Km between my home and work place, it gets to 2.35 tons! The majority of CO2 weight comes form the oxygen atoms, which come from the air. That’s the reason why 770 l of fuel produces 2.35 tons of CO2. At the end, I bought the carbon credits, which is a good thing, I think, but should not restrain from living, or trying to live, more climate neutral.
In the last past weeks I had a busy time finishing an Eclipse/SWT project, therefore having less time to post news on this blog. It should be better for the coming weeks.
We arrived yesterday in Madrid, back from a short week in Extremadura. It was a nice journey. We visited some other nice pueblos. Caceres about 80 km North of Don Benito, where we saw nice roman and arab ruins, in particular a few towers around the antique city along with walls protecting against invaders. Caceres shows a nice mix between the original roman style and arab constructions. We went also to Guadalupe, a village in the mountain at 1.5 hour driving North East from Don Benito. There we visited an old monastery, where lots of antique christian objects in the purest Spanish and baroque tradition have been conserved. We did finally a short stop on Thursday in Medellin, that I mentioned already in my last post. There we saw of course a statue of Hernan Cortes. I am wondering if this guy is worth admiring, considering what has been done by the spanish conquistadors in South America, where the native peoples were persecuted, their culture and language largely cannibilized by the spanish invaders.
Recent Comments