• Choosing a 24' widescreen monitor

    I'm currently using a 17" flat screen with the PlayStation 3 and, also, for my MacBook Pro in clamshell mode. For the laptop, it is "reasonable" given that it has a similar resolution to the one of the built-in screen, but for the PlayStation 3 it simply sucks: I can only use it through the composite input, which results in very bad graphics quality. I also miss the 20" monitor I sold when I bought the MacBook Pro, which was very nice to watch videos and had lots of real screen state to work comfortably. So... I'm in the market for a widescreen computer monitor that natively supports Full HD (i.e. 1920x1080), and that brings me to the 24" world. These things are huge!Here are some things to take into account when looking for such a monitor:Resolution: All 24" computer monitors (not TVs) I've seen have so far have a 16:10 aspect ratio with a resolution of 1920x1200. Some 23" ones also have this same resolution, and I can assume that slightly bigger ones also will. But to support Full HD they need a minimum of 1920x1080.Response time: This is the time it takes to change the color of a pixel. Usually, the lower the better to prevent ghosting, but this is hard to qualify. Each vendor advertises this in a different way, because there are multiple measures that define the response time. For example: you can measure the time it takes for a pixel to go from white to black or from a tone of gray to another tone. Some vendors will only tell you the smallest one. The best specification is when the vendor provides you all different numbers.Brightness and contrast: All monitor specifications will give you some numbers about the brightness and contrast ratio of it. Be aware that there are two measurements for the contrast ratio: dynamic and static.Video inputs: There is a wide variety of rather cheap 24" monitors, but most of them are very limited in the inputs they support. The cheapest one I've found so far only has an analog VGA connection; avoid those. If you are going all the way up to a big monitor, do it right and use a digital connection; otherwise the image may be blurry or unstable.Virtually all other ones have a single digital DVI or HDMI input and an analog one. The most advanced have additional inputs, such as two digital connections (one DVI, one HDMI), a VGA analog one, composite, component, S-video, ... In this area, just choose the one that will suit your requirements, but the more connections they have, the more expensive they will be.HDCP support: If the monitor has digital inputs — DVI, but specially HDMI — make sure it supports HDCP. This is required to watch 1080p high-definition content; otherwise, players will only output 720p, which is half the resolution. So, to use the PlayStation 3 in its full power, you must have HDCP. And I assume that some computer media players also require this... or at least that's the idea I have about video playback in Windows Vista.1:1 pixel mapping: Widescreen computer monitors have an aspect ratio of 16:10, but game consoles and video players output video in 16:9. In terms of resolution, the monitors have 1920x1200 pixels but the video signal will only be 1920x1080. There are many monitors out there that will scale the 16:9 image to fill the whole 16:10 screen, which will distort it. If the monitor supports 1:1 pixel mapping, it will happily display the lower-resolution image on the screen without distortion, adding small black bars at the top and bottom of it.Now, looking for this feature in the vendors' sites is hard... if not impossible. I have not found any list of specifications that mentions it and have only been able to guess whether a given monitor supports it or not by looking at random forums around the Internet. And even then the answers are not very clear.Picture-in-Picture (PiP): This feature allows you to display two different video inputs at the same time on the monitor. One covers the whole display and the other one is shown in a window on top of it. All of this is done internally by the monitor.Vertical orientation: Some monitors allow you to tilt them vertically, thus providing a resolution of 1200x1920. I can't imagine how useful this is, but it might be nice to watch some specific photos that were taken in such orientation.Additional connectors: Look for extra USB or FireWire connections, ideally with extra power.Speakers/microphone: Some monitors include built-in speakers and/or a microphone. I personally do not care much about this because built-in speakers tend to produce low-quality sound. And with such a huge screen I assume you also want decent audio playback ;-)Built-in power supply: To avoid more clutter under your desk, you may want to check if the monitor has a built-in power supply or an external one.So, what am I looking for? I want a monitor with: at least two digital connections, preferably a DVI and an HDMI one; HDCP support; an analog input would be nice; 1:1 pixel mapping is a must; speakers are irrelevant. I've already made my choice and, hopefully, I'll get it today :-) But on the next post I'll try to summarize some of the monitors I've analyzed. [Continue reading]

  • Ministry of silly walks

    I have never posted a video here, but this time I could not resist:The "Ministry of silly walks", by Monty Python. Hilarious. [Continue reading]

  • Past days' work

    Been tracking and resolving a bug in Linux's SPU scheduler for the last three days, and fixed it just a moment ago! I'm happy and needed to mention this ;-)More specifically, tracking it down was fairly easy using SystemTap and Paraver (getting the two to play well together was another source of headaches), but fixing it was the most complex thing due to deadlocks popping up over and over again. Sorry, can't disclose more information about it yet; want to think a bit more how to make this public and whether my fix is really OK or not. But be sure I will! [Continue reading]

  • Thanks, SystemTap!

    I started this week's work with the idea of instrumenting the spufs module found in Linux/Cell to be able to take some traces of the execution of Cell applications. At first, I modified that module to emit events at certain key points, which were later registered in a circular queue. Then, I implemented a file in /proc so that a user-space application could read from it and free space from the queue to prevent the loss of events when it was full.That first implementation never worked well, but as I liked how it was evolving, I thought it could be a neat idea to make this "framework" more generic so that other parts of the kernel could use it. I rewrote everything with this idea in mind and then also modified the regular scheduler and the process-management system calls to also rise events for my trace. And got it working.But then, I was talking to Brainstorm about his new "Sun Campus Ambassador" position at the University, and during the conversation he mentioned DTrace. So I asked... "Mmm, that tool could probably simplify all my work; is it there something similar for Linux?". And yes; yes it is! Its name, SystemTap.As the web page says, SystemTap "provides an infrastructure to simplify the gathering of information about the running Linux system". You do this by writing small scripts that hook into specific points of the kernel — at the function level, at specific mark points, etc. — and which get executed when the script is processed and installed into the live kernel as a loadable kernel module.With this tool I can discard my several-hundred-long changes to gather traces and replace them with some very, very simple SystemTap scripts. No need to rebuild the kernel, no need to deal with custom changes to it, no need to rebuild every now and then... neat!Now I'm having problems using the feature that allows to instrument kernel markers, and I need them because otherwise some private functions cannot be instrumented due to compiler optimizations (I think). OK, I'd expose those functions, but while I'm at it, I think it'd be a good idea to write a decent tapset for spufs that could later be published. And that prevents me from doing such hacks.But anyway, kudos to the SystemTap developers. I now understand why everybody is so excited about DTrace. [Continue reading]