1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Threaded Input Events On The Way For X Server 1.10

X.Org

Published on 23 August 2010 04:43 PM EDT
Written by Michael Larabel in X.Org
10 Comments

While X.Org Servger 1.9 was released less than a week ago (heck, it's only been four days since releasing om time), the first interesting patch for X.Org Server 1.10 is already queued up and on the X.Org development mailing list for discussion. This patch, which was written by Tiago Vignatti and Fernando Carrijo, provides the "thread-ification" of the X Server input event generation code. Rather than being bound to the same thread as the X Server, the input event code with this patch is now running in its own thread, but this may only be the start of things to come with finally multi-threading the X.Org Server.

Nokia's Tiago Vignatti originally mentioned his and Fernando's threaded input work on the X.Org mailing list earlier this month during another input-related discussion and mentioned their input thread branch of the X Server where their work was happening. Though in terms of moving the input event generation to its own thread, this isn't being done for performance reasons but rather to better the code by avoiding the use of SIGIO/SIGPOLL with signal handling. This threading work is being targeted at X Servers running on Linux, but it may end up benefiting other platforms too. More interesting, Tiago looks at this initial input work as "opening space to other thread works" like moving X rendering or other tasks to an independent thread as well. Basically there would be one thread for dispatch and the core object model, one thread for input, and another thread for the GPU. Threading the X Server is something that has interested Tiago since at least 2008 when he talked about it. There was also an effort to multi-thread the X11R6 Server more than a decade ago, but those attempts had failed.

The current X input event generation thread patches can be found in this mailing list. The patch right now is actually only a few hundred lines of code to implement, but more threading work will hopefully come for other areas of the X Server if other developers provide positive feedback. This patch at least should be in X.Org Server 1.10 and for now can be enabled by configuring the xorg-server build process with a new --enable-input-thread build option. Another major change that may also happen with the xorg-server 1.10 release is moving the drivers back into the X Server, but that's a heated issue and something that's to be talked about next month at the 2010 X Developers' Summit in Toulouse, which we will providing coverage.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. 13-Way Low-End GPU Comparison With AMD's AM1 Athlon
  2. ASUS AM1I-A: A Mini-ITX Board For Socketed Kabini APUs
  3. Mini-Box M350: A Simple, Affordable Mini-ITX Case
  4. Overclocking The AMD AM1 Athlon & Sempron APUs
Latest Linux Articles
  1. How Much Video RAM Is Needed For Catalyst R3 Graphics?
  2. Ubuntu 12.04 LTS vs. 14.04 LTS Cloud Benchmarks
  3. Ubuntu 12.04.4 vs. 13.10 vs. 14.04 LTS Desktop Benchmarks
  4. AMD OpenCL Performance With AM1 Kabini APUs
Latest Linux News
  1. ReactOS Working On A Community Windows OS
  2. Borderlands Is Being Considered For Linux
  3. Mesa 10.0 & 10.1 Stable Get Updated
  4. Getting Hit By The Variable Performance Of The Public Cloud
  5. Git 2.0 Test Releases Begin With Many Changes
  6. Wine 1.7.17 Works On Its Task Scheduler, C Run-Time
  7. The Improv ARM Board Still Isn't Shipping; Riding A Dead Horse?
  8. Debian To Maintain 6.0 Squeeze As An LTS Release
  9. Wasteland 2 Is Finally Released For Linux Gamers
  10. FreeBSD Advances For ARM, Bhyve, Clang
  11. Ubuntu 14.04 LTS "Trusty Tahr" Officially Released
  12. Ubuntu 12.04 LTS vs. 14.04 LTS Server Benchmarks
Latest Forum Discussions
  1. Updated and Optimized Ubuntu Free Graphics Drivers
  2. Catalyst 14.3 Beta
  3. Suggestions about how to make a Radeon HD 7790 work decently?
  4. The GNOME Foundation Is Running Short On Money
  5. Radeon 8000M problematic on Linux?
  6. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  7. After Jack Keane, RuseSoft will briing Ankh 3 to Linux through Desura
  8. Suspected PHP Proxy Issue