Language Selection

English French German Italian Portuguese Spanish

Linux Kernel, Linux Foundation and Graphics

Filed under
Graphics/Benchmarks
Linux
  • The final step for huge-page swapping

    For many years, Linux system administrators have gone out of their way to avoid swapping. The advent of nonvolatile memory is changing the equation, though, and swapping is starting to look interesting again — if it can perform well enough. That is not the case in current kernels, but a longstanding project to allow the swapping of transparent huge pages promises to improve that situation considerably. That work is reaching its final stage and might just enter the mainline soon.

    The use of huge pages can improve the performance of the system significantly, so the kernel works hard to make them available. The transparent huge pages mechanism collects application data into huge pages behind the scenes, and the memory-management subsystem as a whole works hard to ensure that appropriately sized pages are available. When it comes time to swap out a process's pages, though, all of that work is discarded, and a huge page is split back into hundreds of normal pages to be written out. When swapping was slow and generally avoided, that didn't matter much, but it is a bigger problem if one wants to swap to a fast device and maintain performance.

  • Revisiting the MAP_SHARED_VALIDATE hack

    One of the the most commonly repeated mistakes in system-call design is a failure to check for unknown flags wherever flags are accepted. If there is ever a point where callers can get away with setting unknown flags, then adding new flags becomes a hazardous act. In the case of mmap(), though, developers found a clever way around this problem. A recent discussion has briefly called that approach into question, though, and raised the issue of what constitutes a kernel regression. No changes are forthcoming as a result, but the discussion does provide an opportunity to look at both the specific hack and how the kernel community decides whether a change is a regression or not.

    Back in 2017, several developers were trying to figure out a way to safely allow direct user-space access to files stored on nonvolatile memory devices. The hardware allows this memory to be addressed directly by the processor, but any changes could go astray if the filesystem were to move blocks around at the same time. The solution that arose was a new mmap() flag called MAP_SYNC. When a file is mapped with this flag set (and the file is stored on a nonvolatile memory device), the kernel will take extra care to ensure that access to the mapping and filesystem-level changes will not conflict with each other. As far as applications are concerned, using this flag solves the problem.

  • Take Our Survey on Open Source Programs

    Please take eight minutes to complete this survey. The results will be shared publicly on The New Stack, and The Linux Foundation’s GitHub page.

  • Mesa 18.1.4 release candidate

    Mesa 18.1.4 is planned for release this Friday, July 13th, at or around 10 AM PDT.

  • Mesa 18.1.4 Being Prepared With Intel Fixes & A Couple For Radeon

    Another routine Mesa 18.1. point release is being prepared while waiting for the August debut of the Mesa 18.2 feature update.

    Dylan Baker, the Mesa 18.1 release manager and his first stab at the task, has announced the Mesa 18.1.4 release candidate today. In its current form, Mesa 18.1.4 is comprised of just over two dozen patches.

  • Pre-AMDGPU xf86-video-ati X.Org Driver Sees A Round Of Improvements

    It's rare in recent years to have anything to report on xf86-video-ati, the X.Org driver for the display/2D experience for pre-GCN Radeon graphics cards. But this week has been a large batch of fixes and improvements for those using this DDX driver with pre-HD7000 series hardware.

    Longtime Radeon Linux driver developer Michel Dänzer has landed a number of commits already this week of various fixes/cleanups, some of which were inspired by the xf86-video-amdgpu DDX driver that is used for current-generation hardware with the AMDGPU kernel driver (unless using xf86-video-modesetting...).

More in Tux Machines

Python: Pyro Probabilistic Programming Language and More

  • Pyro Probabilistic Programming Language Becomes Newest LF Deep Learning Project
    The LF Deep Learning Foundation (LF DL), a Linux Foundation project that supports and sustains open source innovation in artificial intelligence (AI), machine learning (ML), and deep learning (DL), announces the Pyro project, started by Uber, as its newest incubation project. Built on top of the PyTorch framework, Pyro is a deep probabilistic programming framework that facilitates large-scale exploration of AI models, making deep learning model development and testing quicker and more seamless. This is the second project LF DL has voted in from Uber, following last December’s Horovod announcement. Pyro is used by large companies like Siemens, IBM, and Uber, and startups like Noodle.AI, in addition to Harvard University, MIT, Stanford University, University of Oxford, University of Cambridge, and The Broad Institute. At Uber, Pyro solves a range of problems including sensor fusion, time series forecasting, ad campaign optimization and data augmentation for deep image understanding.
  • Converting Python Scripts to Executable Files
    In this tutorial, we will explore the conversion of Python scripts to Windows executable files in four simple steps. Although there are many ways to do it, we'll be covering, according to popular opinion, the simplest one so far. This tutorial has been designed after reviewing many common errors that people face while performing this task, and hence contains detailed information to install and set up all the dependencies as well. Feel free to skip any step, if you already have those dependencies installed. Without any further ado, let's start.
  • Python Performance Optimization
    Resources are never sufficient to meet growing needs in most industries, and now especially in technology as it carves its way deeper into our lives. Technology makes life easier and more convenient and it is able to evolve and become better over time. This increased reliance on technology has come at the expense of the computing resources available. As a result, more powerful computers are being developed and the optimization of code has never been more crucial. Application performance requirements are rising more than our hardware can keep up with. To combat this, people have come up with many strategies to utilize resources more efficiently – Containerizing, Reactive (Asynchronous) Applications, etc.
  • Webinar Recording: “Demystifying Python’s async and await Keywords” with Michael Kennedy
    Yesterday we hosted a webinar with Michael Kennedy from Talk Python To Me podcasts and training presenting Demystifying Python’s async and await Keywords. Turned out to be the highest-rated webinar in 7 years of JetBrains’ webinars. Thanks Michael! The webinar recording is now available, as well as a repository with the Python code he showed and the slides he used.
  • Skipping tests depending on the Python version
    Sometimes we want to run certain tests only on a specific version of Python. Suppose you are migrating a large project from Python 2 to Python 3 and you know in advance that certain tests won't run under Python 3. Chances are that during the migration you are already using the six library. The six libraries have two boolean properties which are initialised to True depending on the Python version which is being used: PY2 when running under Python 2 and PY3 when running under Python 3.

Linux Foundation launches ELISA, an open source project for building safety-critical systems

Machines have a trust problem — particularly autonomous machines deployed in safety-critical scenarios, like industrial robots and driverless cars. In a pair of surveys published by the American Automobile Association last January and by Gallup in May, 63 percent of people reported feeling afraid to ride in a fully self-driving vehicle and more than half said they’d never choose to ride in one. Moreover, in a report published by analysts at Pew in 2017, 70 percent of Americans said they were concerned about robots performing tasks currently handled by humans. In an effort to allay those fears, the Linux Foundation today launched Enabling Linux in Safety Applications (ELISA), an open source project comprising tools intended to help companies build and certify Linux-based systems whose failure could result in loss of human life, significant property damage, or environmental damage. In partnership with British chip designer Arm, BMW, autonomous platforms company Kuka, Linutronix, and Toyota, ELISA will work with certification and standardization bodies in “multiple industries” to establish ways Linux can form the foundation of safety-critical systems across industries. ELISA’s launch follows last year’s rollout of Automotive Grade Linux (AGL) 5.0, the newest version of a Linux Foundation project aimed at bringing open source technology to the automotive industry. Previous releases focused mainly on infotainment systems, but 5.0 introduced telematics and mapping solutions that allow OEMs to share mapping data generated by autonomous cars, in addition to offering improved security and a functional safety platform. Toyota and Amazon expressed early support; the former is using AGL in its 2018 Camry. Read more Slashdot: Linux Foundation Launches ELISA, an Open Source Project For Building Safety-Critical Systems

Security Password Managers, Updates, Intel/Linux, 5 Antivirus for Android Devices and Cisco

  • Your Password Manager Has A Severe Flaw — But You Should Still Use One [Ed: Yet worse: 1) people putting password managers on platforms with back doors from Apple and Microsoft. 2) people putting all their password "in the cloud".]
    If you are an avid user of password managers, you might just be in for a surprise. A recent study by researchers at the Independent Security Evaluators found that a number of popular password managers were storing master passwords as plain text within the main memory of devices. To an expert hacker, this vulnerability is equivalent to getting the keys to multiple accounts as a text document on your computer. The master key of any password manager can be used to gain access to all usernames and passwords being managed by it.
  • Security updates for Thursday
  • Fun Little Tidbits in a Howling Storm (Re: Intel Security Holes)
    Some kernel developers recently have been trying to work around the massive, horrifying, long-term security holes that have recently been discovered in Intel hardware. In the course of doing so, there were some interesting comments about coding practices. Christoph Hellwig and Jesper Dangaard Brouer were working on mitigating some of the giant speed sacrifices needed to avoid Intel's gaping security holes. And, Christoph said that one such patch would increase the networking throughput from 7.5 million packets per second to 9.5 million—a 25% speedup. To do this, the patch would check the kernel's "fast path" for any instances of dma_direct_ops and replace them with a simple direct call. Linus Torvalds liked the code, but he noticed that Jesper and Christoph's code sometimes would perform certain tests before testing the fast path. But if the kernel actually were taking the fast path, those tests would not be needed. Linus said, "you made the fast case unnecessarily slow."
  • 5 Antivirus for Android Devices That You Should Have in 2019
  • Duo Security Digs Into Chrome Extension Security With CRXcavator

A brief comparison of Java IDE’s: NetBeans Vs Eclipse

Thinking about entering the world of programming? What better way to enter than through Java and joining a community of over 10 million developers worldwide? Java is one of the most popular programming languages right now. It is an interpreted, object-oriented programming language which is directly supported by major operating systems like Apple, Linux, Windows, Sun etc. Java is a portable programming language meaning a program can be written on one platform and can run on all platforms. Java supports networking (you can use TCP and UDP sockets) and access remote data using a variety of protocols. It also provides the feature of multithreading, which can utilize multiple processors and one of the prime features of Java is garbage collection. In many languages, the programmer is responsible for deallocating memory and it can become a hassle resulting in errors and segmentation faults. Java, on the other hand, has a garbage collector which manages the memory and frees up the memory by destroying objects not in use. To start coding in Java you need to have Java installed, the latest version of Java is 11 but Java 8 is still supported so having any one of these installed will be enough to get you started. Writing a program and compiling it would take some effort as you will have to write the code in a text file and then save it in .java and then have to compile it using terminal, or you can use an IDE and save yourself the time and effort used in this process and get a slew of interesting features. An Integrated Development Environment or IDE for short, is a software application which helps the user to write and compile code easily by providing features like text editing, debugging plugins etc. while providing compilation by the click of one button. Java has many IDEs but two of the most popular ones are NetBeans and Eclipse. Read more