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 Benchmarking Platform
Phoromatic Test Orchestration

Fog: A High-Performance Alternative To Cairo

Free Software

Published on 04 March 2012 06:59 AM EST
Written by Michael Larabel in Free Software
7 Comments

While Cairo gets much of the spotlight when it comes to a 2D vector graphics drawing library, there's another open-source project that claims to provide even faster performance and greater benefits; meet the Fog-Framework.

Fog-Framework, unlike Cairo that's written in C, is written in C++ and made available under the MIT license. Fog-Framework provides a high-performance 2D vector graphics library with a platform-independent SVG engine and optional UI tool-kit.

For providing fast performance, the Fog-Framework engine is multi-threaded and does feature a JIT (Just-In-Time) compiler as well. Fog-Framework still relies upon underlying operating system APIs and libraries for handling basic tasks like loading image files and other system controls. The project has posted benchmarks indicating Fog to be much faster than Windows GDI+ and Cairo in a variety of tests.

Fog-Framework consists of Fog-Core (the platform abstraction component), Fog-G2d (the Vector 2D and imaging side), Fog-UI (the optional vector UI), and Fog-Svg (the SVG DOM, parser, and renderer).

The 2D graphics library component (Fog-G2d) was based upon the Anti-Grain Geometry project, but with a horde of improvements. Besides single and multi-threading optimizations, there is various CPU optimizations like for SSE3. At the moment, however, the 2D graphics library is just a CPU-based software rasterizer. Fog-Framework may be fast and outperforming the popular Cairo, but at the moment it's just running on the CPU and not poking the GPU like can be done under Cairo with some of its back-ends.

The project does have a lengthy to-do list / road-map as listed here. Besides the back-end shortage, another disadvantage compared to Cairo is at the moment it doesn't appear to have bindings for as many languages as Cairo. The open-source project is hosted on Google Code.

Other alternatives would be the Skia library that's used by Google and Azure, which is a replacement for Cairo within Mozilla Firefox.

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 News
  1. XFS Will Get DAX Support In The Linux 4.2 Kernel
  2. X.Org Server Lands More Mode-Setting/GLAMOR Improvements, But No Sign Of 1.18
  3. Linux Mint 17.2 Officially Released With Cinnamon/MATE Flavors
  4. Fedora For MIPS Is Now Out In Testing, Supports The Creator CI20
  5. KDE Plasma 5.3.2 Fixes Shutdown Scripts, Few Dozen Other Bugs
  6. KDE Marks Four Years In Its Process Of Porting To Wayland
  7. Btrfs In Linux 4.2 Brings Quota Updates, Many Fixes
  8. Latest Rumor Pegs Microsoft Wanting To Buy AMD
  9. The Next-Gen Phoronix Site Experience Is Almost Ready
  10. Exciting Features Merged So Far For The Linux 4.2 Kernel
Latest Articles & Reviews
  1. How KDE VDG Is Trying To Make Open-Source Software Beautiful
  2. Attempting To Try Out BCache On The Linux 4.1 Kernel
  3. CompuLab's Fitlet Is A Very Tiny, Fanless, Linux PC With AMD A10 Micro
  4. AMD A10-7870K Godavari: RadeonSI Gallium3D vs. Catalyst Linux Drivers
Most Viewed News This Week
  1. Kubuntu 15.10 Could Be The End Of The Road
  2. Linus Is Looking Forward To Merging KDBUS, But Not Convinced By Performance
  3. NVIDIA Starts Supplying Open-Source Hardware Reference Headers
  4. KDBUS Won't Be Pushed Until The Linux 4.3 Kernel
  5. Linux 4.2 Kernel Gets Port To New Processor Architecture
  6. The Staging Pull For Linux 4.2: "Big, Really Big"
  7. SteamOS "Brewmaster" Is Valve's New Debian 8.1 Based Version
  8. Jonathan Riddell Steps Down From The Kubuntu Council