DFI - ddr-phy.org Tutorial - Perf Wiki Linux kernel profiling with perf Introduction Perf is a profiler tool for Linux 2.6+ based systems that abstracts away CPU hardware differences in Linux performance measurements and presents a simple commandline interface. Commands The perf tool offers a rich set of commands to collect and analyze performance and trace data. The list of supported commands: Certain commands require special support in the kernel and may not be available. Events The perf tool supports a list of measurable events. Another source of events is the processor itself and its Performance Monitoring Unit (PMU). The perf_events interface also provides a small set of common hardware events monikers. Finally, there are also tracepoint events which are implemented by the kernel ftrace infrastructure. To obtain a list of supported events: An event can have sub-events (or unit masks). Hardware events PMU hardware events are CPU specific and documented by the CPU vendor. Counting with perf stat Modifiers multiple events
PacketShader - GPU-accelerated Software Router A GPU-accelerated Software Router New: The I/O engine is now available! We have partially released the source code used in this work. You can find the user-level packet I/O engine for Intel 82598/82599 NICs here. What is PacketShader? PacketShader is a high-performance PC-based software router platform that accelerates the core packet processing with Graphics Processing Units (GPUs). Why GPU? As you all know, GPU is a central chip in your graphics card. Packet I/O Optimization on Linux We implemented high-performance packet I/O engine for user-level application. Currently-available Linux network stack is not optimized for high-performance IP packet processing, say, for multi-10G networks. Huge packet buffer: Instead of allocating metadata (sk_buff or skb) and packet data for each packet reception, PacketShader pre-allocates two circular buffers that can hold a large array of metadata and packet data. Performance Figure 1 shows the performance of our optimized packet I/O engine. Figure 1.
Blade server IBM HS20 blade server. Two bays for 2.5" (6.4 cm) SCSI hard drives appear in the upper left area of the image. A blade server is a stripped down server computer with a modular design optimized to minimize the use of physical space and energy. In a standard server-rack configuration, one rack unit or 1U—19 inches (480 mm) wide and 1.75 inches (44 mm) tall—defines the minimum possible size of any equipment. Blade enclosure Enclosure (or chassis) performs many of the non-core computing services found in most computers. HP BladeSystem c7000 enclosure (populated with 16 blades), with two 3U UPS units below. Power Computers operate over a range of DC voltages, but utilities deliver power as AC, and at higher voltages than required within computers. The blade enclosure's power supply provides a single power source for all blades within the enclosure. Cooling Networking Storage Other blades Uses History Blade models See also References
Announces eMMC 5.0 Total IP Solution at Mobile World Congress | Arasan Upcoming eMMC 5.0 specification will double performance of the eMMC interface. Barcelona, Spain– February 28, 2013 - Arasan Chip Systems, Inc. (“Arasan”), a leading provider of Total IP Solutions, announced today support for the upcoming eMMC 5.0 specification which is proceeding to ratification within the JEDEC standards organization. The eMMC Total IP Solution comprises digital and analog IP cores, software stack, firmware and a hardware validation platform. “Arasan has a track record of participating in standards development and delivering IP at the earliest possible time to satisfy customer needs,” said Andrew Haines, Vice President of Marketing for Arasan. Availability Arasan’s is currently engaging with early adopters for licensing of analog and digital IP cores, Verilog HDL for verification, software stack and firmware and sales of the hardware validation platform. About Arasan About eMMC
Opal Storage Specification The Opal Storage Specification from the Trusted Computing Group is a set of Storage Workgroup specifications which provides a comprehensive architecture for putting Storage Devices under policy control as determined by the trusted platform host. The capabilities of the Storage Device to conform with the policies of the trusted platform and the lifecycle state of the Storage Device as a Trusted Peripheral. OPAL SSC Overview The Opal SSC (Security Subsystem Class) is an implementation profile for Storage Devices built to: Protect the confidentiality of stored user data against unauthorized access once it leaves the owner's control (involving a power cycle and subsequent deauthentication).Enable interoperability between multiple SD vendors. OPAL SSC Functionalities The Opal SSC has a wide set of functionalities: Security Provider SupportInterface Communication ProtocolCryptographic FeaturesAuthenticationTable ManagementAccess Control & PersonalizationIssuanceSSC Discovery
Research Preface: What is OpenGL? | OpenGLBook.com On the most fundamental level, OpenGL is a software interface that allows a programmer to communicate with graphics hardware. Of course, there is much more to it than that, and you will be glad to know that this book explains the finer details of OpenGL. But before we get our hands dirty and start coding, you’ll need to know a little about the history of Computer Graphics and OpenGL. In the preface we’ll explore the following topics: The inception of computers and computer graphicsWhat OpenGL is and how it came to beHow computer graphics workHardware and software requirements for this book Attention If you want to get straight into graphics programming without reading this lengthy history, you may skip straight to the “requirements” section below, read it, and start the next chapter. Whether through writing, painting, or body language, imaging has always been an important player in relaying information and chronicling history. Display: Cathode Ray Tubes The First Interactions Flexibility
printk() problems By Jonathan CorbetJune 26, 2012 The record-oriented logging patch set was pulled into the mainline during the 3.5 merge window. These changes are meant to make the processing of kernel messages generated by printk() and friends more reliable, more informative, and more easily consumed by automatic systems. But recently it has turned out that these changes make printk() less useful for kernel developers. One of the core design features of the new printk() is a change from byte-streamed output to record-oriented output. There is just one little problem, though: when the kernel outputs a partial message (by passing a string to printk() that does not end with a newline), the logging system will buffer the text until the rest of the message arrives. If a driver does printk("testing the frobnozzle ..."); do_test(); printk(" OK\n"); and do_test() hangs up, we really really want the user to know that there was a frobnozzle testing problem. (Log in to post comments)
Linux flashcache and bcache performance testing « AccelCloud Services The tests have been performed in order to see the current performance improvements of using Flashcache or Bcache having writeback caching enabled. For testing we used Phoronix Test Suite and we ran the pts/disk benchmark group. Each benchmark ran took around 9 hours. We have ran all of the tests on a Debian Squeeze install (current stable) but unfortunately there was a difference and that is the kernel version. All of the single disk/ssd, software raid and Flashcache tests were made on 2.6.32 while the Bcache test was ran on kernel 3.1.0 (whole kernel source was checked out from Bcache repository and the config from the Debian 2.6.32 kernel was applied). Software raid was used for the S-ATA disks and write caching was enabled for those. --------------------- Flashcache --------------------- --------------------- Bcache ---------------------