Vulkan was introduced as the successor of OpenGL ES in March 2015, promising to take less CPU resources, and support multiple command buffers that can be created in parallel and distributed over several cores, at the cost of slightly more complex application programming since less software work in done inside the GPU drivers themselves with app developers needing to handle memory allocation and thread management. This was just a standard at the time, so it still needed some time to implement Vulkan, and work is still in program but ARM showcased the power efficiency of Vulkan over OpenGL ES in the video embedded at the end of this post. The demo has the same graphics details and performance using both OpenGL ES and Vulkan, but since the load on the CPU in that demo can be distributed over several CPU cores with Vulkan against a single core for OpenGL ES, […]
Open Source Operating Systems News – Maru OS, Zephyr, ReactOS, Tizen 3.0, and Raspbian
There have been several news related to open source operating systems in the last couple of weeks including Maru OS to run Debian on Android, Zephyr Project real-time OS managed by the Linux Foundation, ReactOS an open source port of Windows XP, and Raspberry Pi boards are getting a Tizen 3.0 port, as well as a new Raspbian release. Maru OS – Mobile <-> Desktop Convergence Maru OS mobile operating system is supposed to do what Ubuntu convergence promised: it runs in mobile mode on the go with Android Lollipop mobile OS, once you connect the phone to an HDMI screen, and pair Bluetooth keyboard and/or mouse, it will switch to desktop mode running Debian Linux. The downside is that so far it a single developer (Preetam D’Souza) worked on it, and the beta version only works on Nexus 5 smartphone. However, since the project went viral, dozen of other […]
PowerVR GT7200 Plus and GT7400 Plus GPUs Support OpenCL 2.0, Better Computer Vision Features
Imagination Technologies introduced PowerVR Series7XT GPU family with up to 512 cores at the end of 2014, and at CES 2016, they’ve announced Series7XT Plus family with GT7200 Plus and GT7400 Plus GPUs, with many of the same features of Series7XT family, plus the addition of OpenCL 2.0 API support, and improvements for computer vision with a new Image Processing Data Master, and support for 8-bit and 16-bit integer data paths, instead of just 32-bit in the previous generation, for example leading to up to 4 times more performance for applications, e.g. deep learning, leveraging OpenVX computer vision API. GT7200 Plus GPU features 64 ALU cores in two clusters, and GT7400 Plus 128 ALU cores in a quad-cluster configuration. Beside OpenCL2.0, and improvements for computer vision, they still support OpenGL ES 3.2, Vulkan, hardware virtualization, advanced security, and more. The company has also made some microarchitectural enhancements to improve performance […]
Google Plans Vulkan API Support for Android, Imagination Shows a Demo
Vulkan graphics API is the successors to OpenGL and OpenGL ES API, which will support multi-threaded rendering, move some of the complexity to the applications, and simplify graphics drivers, which may not be a bad things since these tend to be closed source, and bugs may be hard to get fixed. Google, which is now a subsidiary of a new company called Alphabet, has recently announced that Vulkan will be implemented in future versions of Android, although OpenGL ES will still be supported, so developers can select their preferred graphics API for their apps, as Vulkan will be more complex for application programmers than OpenGL ES. Separately, Imagination technologies showcased their Vulkan driver for PowerVR Rogue GPU on the Nexus Player powered by an Intel SoC including a PowerVR G6430 GPU, and compare the Vulkan demo to the same demo using OpenGL ES 3.0 drivers. The difference between Vulkan and OpenGL […]
Meet Vulkan, The Successor of OpenGL and OpenGL ES 3D Graphics APIs
So far embedded systems are typically using SoCs with GPU supporting OpenGL ES, a subset of the full fledge OpenGL API used in desktop computers and workstations. These royalty-free standards are defined by Khronos Group non-profit organization, and as features in the embedded space and traditional computers merge, the group has now revealed the next-generation OpenGL specs will be called Vulkan. The new API will run on GPUs supporting OpenGL ES 3.1 or greater, take less CPU resources than its predecessors, and support multiple command buffers that can be created in parallel. More work will be required at the application level, but direct GPU control by the drivers will apparently result in less memory copies improving performance, or at least off-loading the CPU. It might be transparent to developers using game engines. GPU drivers will also be less complex. Vulkan will also use the new SPIR-V language shared with OpenCL […]
3D Graphics Acceleration in Linux on Allwinner A80 based Cubieboard4
Allwinner A80 is a powerful octa-core processor found in development boards and TV boxes such as Cubieboard4 or Tronsmart Draco AW80. Some early Ubuntu images and instructions had already been released for A80 Optimusboard and Draco AW80, but none of these featured GPU drivers for 3D acceleration, which to be honest, has limited advantages in Linux desktop distributions since desktop environments and most apps require full OpenGL support, i.e. not only OpenGL ES, and the only ARM SoC that can provide OpenGL support without external graphics card is Nvidia Tegra K1 SoC. Having said that GPU drivers would pave the way for smooth OpenELEC / Kodi user interface support in Allwinner A80 Linux distributions. That’s only one part of the puzzle, since the GPU normally handles the user interface, while the VPU takes care of video decoding. The good news is that CubieTech release updates images for their Cubieboard4 (CC-A80) […]
TyGL OpenGL ES 2.0 Backend for WebKit Speeds Up Web Rendering by Up to 11 Times
ARM, Szeged University in Hungary, and Samsung Research UK have been working on TyGL, a new backend for WebKit accelerated with OpenGL ES2.0, and developed and tested on ARM Mali-T628 GPU found in Samsung ARM Chromebook. It will typically provide 1.5 to 4.5 times higher performance, but in the best cases, it can achieve up to eleven times the performance of a CPU-only rendered page. The key features of TyGL include: Web rendering accelerated by GPU – Batching of draw calls delivers better results on GPUs. TyGL groups commands together to avoid frequent state changes while calling the Graphics Context API. Automatic shader generation – TyGL generates complex shaders from multiple shader fragments, and ensures the batches fit into the shader cache of the GPU. Trapezoid based path rendering – Work in progress. It will leverage GPU capabilities such as the Pixel Local Storage extension for OpenGL ES. No software […]
Some Projects on Nvidia Jetson TK1 Development Board: Nintendo Emulator, USB3 Webcam, and Robotics
Nvidia Jetson TK1 is a development board powered by the company’s Tegra K1 quado core Cortex A15 processor, and especially a Kepler GPU that allows for OpenGL 4.4. It has shipped to developers around April/May, and some of them have showcased their projects, or tested some hardware. Dolphin Emulator on Nvidia Jetson TK1 Dolphin is an emulator for Nintendo GameCube and Wii console that supports full HD (1080p) rendering, and run on Android, Linux and Mac OS, and there’s also an Alpha version for Android. Ryan Houdek (Sonicadvance1), one of Dolphin’s developers, has leveraged Kepler’s OpenGL support via Nvidia’s GPU drivers, to port the emulator to the platform running on Ubuntu, but it should work as well on Tegra K1 hardware running Android such as XiaoMi MiiPad tablet. You can watch Mario Kart: Double Dash demo running at full speed on the Nvidia board below. According to the developer, such […]