Language Selection

English French German Italian Portuguese Spanish

Graphics/Benchmarks

Graphics: NVIDIA/CUDA and Panfrost Gallium3D

Filed under
Graphics/Benchmarks
  • CUDA, woulda … did: Nvidia makes CUDA 11 generally available, mostly pushing its next-gen architecture

    Developers who were excited by Nvidia’s May announcement of an upcoming CUDA release can finally hop over to the company’s dev portal to download version 11 of the parallel computing platform and programming model for GPUs.

    The number of those actually able to make the most of CUDA 11 seems to be comparatively small, given that its most notable features can be subsumed under support for the newest generation of Nvidia GPUs. The A100 is one example, built with the new Ampere architecture that should now work well with CUDA. It was developed to help compute some of the more complex tasks that can be found in the realms of AI, data analytics, and high-performance computing and is also central to the company’s data centre platform.

  • NVIDIA CUDA 11.0 Released With Ampere Support, New Programming Features

    NVIDIA appears to have quietly promoted CUDA 11.0 to its stable channel.

    CUDA 11.0 was announced back in May at the virtual GTC and release candidates subsequently available. On Tuesday though a reader tipped us off that the official CUDA 11.0 binaries are indeed now available. CUDA 11.0 downloads for Linux and Windows are available as always from developer.nvidia.com.

  • Panfrost Gallium3D Driver Adds Midgard Multi-Sampling Support

    The Panfrost Gallium3D driver providing open-source OpenGL support for Arm Mali graphics hardware now has working multi-sample anti-aliasing (MSAA) for Arm Midgard hardware.

    Alyssa Rosenzweig has merged her work on supporting multi-sampling with Midgard using this reverse-engineered Gallium3D driver. This gets the driver close to the multi-sampling requirements mandated by the OpenGL ES 3.0 specification.

AMD Ryzen 5 3600XT / Ryzen 7 3800XT / Ryzen 9 3900XT Linux Performance In 130+ Benchmarks

Filed under
Graphics/Benchmarks

After the AMD Ryzen 3000XT series was announced last month, these new higher-clocked Zen 2 desktop processors are shipping today. Here are 130+ benchmarks on each of the Ryzen 5 3600XT, Ryzen 7 3800XT, and Ryzen 9 3900XT parts compared to various Intel and AMD CPUs. Tests under Ubuntu Linux and also complemented by performance-per-Watt / power and performance-per-dollar data points.

These "XT" processors were announced in mid-June as still being Zen 2 based like the rest of the Ryzen 3000 desktop line-up but with slight increases to the base and boost clock frequencies to ratchet up the competition on Intel's new Comet Lake processors.

Read more

Kernel: Peter Hutterer, ARM and Monado Work

Filed under
Graphics/Benchmarks
Linux
  • User-specific XKB configuration - part 2

    Several moons have bypassed us [1] in the time since the first post, and Things Have Happened! If you recall (and of course you did because you just re-read the article I so conveniently linked above), libxkbcommon supports an include directive for the rules files and it will load a rules file from $XDG_CONFIG_HOME/xkb/rules/ which is the framework for custom per-user keyboard layouts. Alas, those files are just sitting there, useful but undiscoverable.

    To give you a very approximate analogy, the KcCGST format I described last time are the ingredients to a meal (pasta, mince, tomato). The rules file is the machine-readable instruction set to assemble your meal but it relies a lot on wildcards. Feed it "spaghetti, variant bolognese" and the actual keymap ends up being the various components put together: "pasta(spaghetti)+sauce(tomato)+mince". But for this to work you need to know that spag bol is available in the first place, i.e you need the menu. This applies to keyboard layouts too - the keyboard configuration panel needs to present a list so the users can clickedy click-click on whatever layout they think is best for them.

  • Linux 5.9 To Bring Arm Memory Tagging Extension Support

    The 64-bit ARM code building up for the Linux 5.9 cycle is set to mainline Memory Tagging Extension (MTE) support as another security improvement inbound.

    The Memory Tagging Extension (MTE) of the ARMv8.5-A specification is intended to help fend off potential memory safety violations that could lead to exploits of the system. MTE has the mechanism with supported hardware to detect the most common memory safety violations and can assist in detection of vulnerabilities.

  • Monado OpenXR Runtime Now Supports Multi-Application Rendering / Overlays

    The Monado open-source OpenXR runtime has seen a lot of features added this year and the most recent is support for OpenXR's XR_EXTX_overlay extension to allow for multi-application / overlay rendering.

    The XR_EXTX_overlay extension from LunarG, Epic Games, and Pluto VR is for allowing contents of separate OpenXR applications to be composited on top of the main OpenXR application. Some of the intended use-cases for this OpenXR overlay extension is for debug environments that may want to render metrics on top of the main window, showing a heads-up display (HUD), and exposing other panels on top of the main window/application being rendered. The extra applications are rendered in a separate process and then composited on top of the main application.

Linux Graphics and File Systems

Filed under
Graphics/Benchmarks
Linux
  • DRM Scheduler Improvement, New Epoch Counter, Other DRM Work For Linux 5.9

    Following the drm-misc-next pull request to DRM-Next last week that exposes VRR ranges via DebugFS and other improvements, another round of DRM-Misc-Next material has now been sent in for queuing ahead of the Linux 5.9 cycle.

  • Frame-Buffer Compression Support For Vintage Intel i865 Graphics Revived

    Back in April I wrote about patches for enabling FBC on the Intel 865 chipset nearly two decades after that chipset first shipped. Those patches didn't yet hit the mainline Linux kernel but they were revived again this week.

    These patches are for enabling frame-buffer compression support on the Intel Extreme 2 Graphics found with the i865 "Springdale" chipset. Frame-buffer compression can yield performance and power efficiency advantages thanks to the reduced bandwidth. Newer generations of Intel graphics hardware have squared away their FBC support for a while but the i865 era support was overlooked until recent patches improving the state pushed it forward enough where it could finally be enabled by default.

  • Reiser5 Pursuing Selective File Migration For Moving Hot Files To High Performance Disks

    Edward Shishkin continues pursuing development of new file-system functionality for Reiser5, the next-generation evolutionary advancement over the controversial Reiser4 file-system.

    Reiser5 has been working on new features like local volumes with parallel scaling out, data tiering and burst buffers, and other new features. The latest feature being worked on by Shishkin for Reiser5 is selective file migration.

Linux Plumbers Conference Not Sold Out and Annual X.Org / Wayland / Mesa Conference Going Virtual

Filed under
Graphics/Benchmarks
Linux
  • Linux Plumbers Conference: Linux Plumbers Conference is Not Sold Out

    We’re really sorry, but apparently the Cvent registration site we use has suffered a bug which is causing it to mark the conference as “Sold Out” and, unfortunately, since today is the beginning of the American Independence day weekend, we can’t get anyone to fix it until Monday. However, rest assured there are plenty of places still available, so if you can wait until Monday, you should be able to register for the conference as soon as the site is fixed.

  • The Annual X.Org / Wayland / Mesa Conference Is Going Virtual Due To COVID-19

    XDC 20 was set to take place this September in Poland but is now moving to an online event as a result of the ongoing coronavirus / COVID-19 pandemic. 

    The X.Org Foundation has decided to make XDC 2020 a virtual conference due to uncertainty over the COVID-19 situation come September in Europe. This will be the first time the annual X.Org Developers' Conference has been an entirely online event. 

    The announcement was made today as well as extending the call for presentations by an additional two weeks. 

Raspberry Pi 4's Vulkan Driver and More

Filed under
GNU
Graphics/Benchmarks
Linux
  • Alejandro Piñeiro: v3dv status update 2020-07-01

    Input attachment is one of the main sub-features for Vulkan multipass, and we’ve gained support since the announcement. On Vulkan the support for multipass is more tightly supported by the API. Renderpasses can have multiple subpasses. These can have dependencies between each other, and each subpass define a subset of “attachments”. One attachment that is easy to understand is the color attachment: This is where a given subpass writes a given color. Another, input attachment, is an attachment that was updated in a previous subpass (for example, it was the color attachment on such previous subpass), and you get as a input on following subpasses. From the shader POV, you interact with it as a texture, with some restrictions. One important restriction is that you can only read the input attachment at the current pixel location. The main reason for this restriction is because on tile-based GPUs (like rpi4) all primitives are batched on tiles and fragment processing is rendered one tile at a time. In general, if you can live with those restrictions, Vulkan multipass and input attachment will provide better performance than traditional multipass solutions.

    If you are interested in reading more details on this, you can check out ARM’s very nice presentation “Vulkan Multipass mobile deferred done right”, or Sascha Willems’ post “Vulkan input attachments and sub passes”. The latter also includes information about how to use them and code snippets of one of his demos. For reference, this is how the input attachment demos looks on the rpi4...

  • Raspberry Pi 4's Vulkan Driver Is Now More Usable - Supporting More Features

    The "V3DV" Vulkan driver being developed by Igalia under contract with the Raspberry Pi Foundation has offered a status update on this official driver for the Raspberry Pi 4.

    The V3DV effort is the modern, official Vulkan driver for the Raspberry Pi 4 and not to be confused with the third-party Vulkan driver for pre-RPi4 hardware or the former Raspberry Pi 4 Vulkan effort. This is the new driver being developed and what ultimately will be the official driver option moving forward.

  • Code Jetpac’s rocket building action | Wireframe #40

Graphics: Mesa, Mircade/Mir, Intel/DRM-Next and UBO Sighting

Filed under
Graphics/Benchmarks
  • Mesa CI Optimization Could Provide Big Bandwidth Savings

    You may recall that earlier this year X.Org/FreeDesktop.org may have to cut CI services for developers over the cloud expenses associated with that continuous integration service for the likes of Mesa, the X.Org Server, and other components. CI usage was leading to a lot of bandwidth consumption so much so that the X.Org Foundation is facing potential ~70k USD cloud costs this year largely from their continuous integration setup.

    Since then there has been some work on better optimizing their continuous integration setup with Jenkins and within the latest Mesa Git is some further tuning.

  • A snap confined shell based on Mir: Mircade (or Mircade: An example snap confined user shell)

    There are various scenarios and reasons for packaging a Snap confined shell and a selection of applications together in a confined environment. You might have applications that work well together for a particular task; or, you may want to offer a number of alternative applications and have them available on a wide range of target platforms. Mircade illustrates this approach.

  • Intel Rocket Lake Graphics Support Ready For Liftoff With Linux 5.9

    Intel has sent in their initial batch of graphics driver updates to DRM-Next that in turn are slated to land with the Linux 5.9 cycle once its merge window opens next month.

    Most significant with this Intel DRM-Next pull is the introduction of Rocket Lake support, the Comet Lake successor that is said to be a still-14nm part but making it most exciting will be the replacement of the longstanding Gen9 graphics with Gen12 graphics. Back in May Intel posted the open-source Rocket Lake patches but came just too late for getting them reviewed/tested in time for Linux 5.8 and thus diverted for the 5.9 cycle.

  • Mike Blumenkrantz: UBO Sighting

Graphics: Intel, Weston, NVIDIA and AMD

Filed under
Graphics/Benchmarks
  • Intel's IGC 1.0.4241 Graphics Compiler Adds DG1 Platform Support

    Significant with this new version of the IGC compiler is the DG1 platform is supported, their first graphics card. IGC already supported Gen12/Xe while now the initial bits are in place for the forthcoming DG1 discrete graphics card. For weeks now we've been seeing Intel's many open-source developers posting new DG1 enablement patches from the Linux kernel through their Mesa stack to the media encode/decode driver and now working its way into DG1 for their compute stack. Obviously you also need to be running on the future Linux 5.9 kernel and more for getting this DG1 support all aligned but at least the IGC side work is now in place.

  • Weston 9.0 release schedule
    Hi all,
    
    Here is the release schedule for Weston 9.0, the next major version:
    
    - Alpha: July 30th, in 4 weeks
    - Beta: August 13th
    - RC1: August 27th
    - First possible release: September 3rd
    
    Package maintainers are encouraged to pick up the pre-releases to make
    sure packaging can be tested (and fixed) before the stable release.
    
    Let me know if there's something in particular you want merged for 9.0.
    
    Thanks,
    
    Simon Ser
    
  • Wayland's Weston 9.0 Aims For Release In Early September

    With Weston 8.0 having shipped in January, Wayland developers are beginning to prepare for the next feature release of this reference Wayland compositor.

    Simon Ser has once again stepped up to take over Weston release management duties. He is planning to tag the Weston 9.0 Alpha at the end of June, a Weston 9.0 Beta in mid-August, and a first release candidate at the end of April. If all goes well he hopes to ship Weston 9.0 on 3 September but could be delayed by some days if additional release candidates are warranted.

  • LLVMpipe Gallium3D Driver Now Exposes OpenGL 4.0

    The LLVMpipe Gallium3D driver that provides a software/CPU-based OpenGL implementation for running on systems as a fallback path when no GPU / hardware OpenGL driver is available, a vendor-neutral path for debug purposes, and similar use-cases, now has OpenGL 4.0 support.

  • NVIDIA Video Codec SDK 10 Brings Few Changes For This Proprietary Library

    NVIDIA has quietly released Video Codec SDK 10 as the newest version of their proprietary video encode/decode implementation designed for their GPUs.

    [...]

    NVIDIA has already contributed to FFMpeg support for using the new NVENC presets, multi-pass encode modes, and low-delay key frame scaling for this video library as part of the Video Codec SDK 10 support. A follow-up commit added additional H.264 levels now supported.

  • RadeonSI Switches To Make Greater Wave64 Use On Navi

    While RDNA/Navi brought Wave32 support, the open-source RadeonSI Gallium3D driver for Linux has decided to switch to make greater use now of Wave64 for more shaders.

    [...]

    The change to use Wave64 for more shader stages was merged this week for Mesa 20.2. The commit does add the new "nggctess" perf flag for always using NGG culling for tessellation, complementing the existing nggc (for always using NGG culling) and nonggc for disabling NGG culling.

  • Mike Blumenkrantz: Binding Locations

    So let’s get down to pixels. The UBO indexing is now fixed-ish, which means moving onto the next step: setting up bindings for the UBOs.

    A binding in this context is the numeric id assigned to a UBO for the purposes of accessing it from a shader, which also corresponds to the uniform block index. In mesa, this is the struct nir_variable::data.binding member of a UBO. A load_ubo instruction will take this value as its first parameter, which means there’s a need to ensure that everything matches up just right.

Benchmarking The Performance Overhead To LKRG 0.8 For Better Security

Filed under
Graphics/Benchmarks

Back in March I benchmarked the Linux Kernel Runtime Guard (LKRG) as a means of achieving additional security safeguards for a ~5% performance hit. With LKRG 0.8 having been released a few days ago, here is a fresh look at the LKRG performance compared to the stock kernel on Ubuntu 20.04 LTS.

LKRG adds runtime integrity checking to the Linux kernel and other runtime detection of security exploits. LKRG 0.8 was released last week and the focus of our latest benchmarking. LKRG 0.8 adds new safeguards as well as support for newer kernel builds, experimental 32-bit ARM and Raspberry Pi support, new tunables, and other changes.

Read more

Graphics: Khronos, AMD, Nir and Monado

Filed under
Graphics/Benchmarks
  • Khronos Releases SYCL 2020 Provisional Specification

    The Khronos Group has announced the provisional specification of SYCL 2020 as the newest version of this higher-level programming model originally designed for OpenCL that is based on pure single-source C++.

    The SYCL 2020 provisional specification is available today and is now based on C++17 where as formerly SYCL had been based on C++11. SYCL 2020 is also bringing new programming abstractions like unified shared memory, group algorithms, sub-groups, and other features.

  • AMDVLK 2020.Q2.6 Brings More Performance Tuning

    The AMD Radeon Vulkan driver developers are ending out June by shipping their sixth open-source snapshot of the quarter.

    With AMDVLK 2020.Q2.6, there are continued performance tuning/optimization efforts. There has been performance tuning going on to benefit Ghost Recon Breakpoint and Zombie Army 4: Dead War under Wine / Steam Play. There is also improved pipeline compiler performance with this Vulkan driver update.

  • Mike Blumenkrantz: Nirly There

    In yesterday’s post, I left off in saying that removing an assert() from the constant block index check wasn’t going to work quite right. Let’s see why that is.

  • Monado: Multi application support with XR_EXTX_overlay

    By implementing this extension we are exposing Monado's multi application support, which was recently merged to master.

    In the video below you can see Monado compositing the rendering of Blender's VR view and the xrgears demo displaying a XrCompositionLayerProjection as overlay. The demo also showcases Monado's ability to deal with multiple graphics APIs as Blender uses OpenGL and xrgears Vulkan to submit its frames.

    To enable the extension in xrgears only this small change was required, which enables the XR_EXTX_overlay extension and passes the XrSessionCreateInfoOverlayEXTX struct to the graphics bindings `next` field.

Syndicate content

More in Tux Machines

Beelink GT-R Review – An AMD Ryzen 5 Mini PC Tested with Windows 10 and Ubuntu 20.04

One issue I did encounter both in Windows and in Ubuntu was that my 4-port KVM was not properly recognized. I did get a rather poor HDMI signal to the monitor however the USB port was not working and by extension neither were my wireless keyboard and mouse. However, using a USB-C hub (2 x USB 3.0 and 1 x HDMI) worked fine as did using the various HDMI and USB ports directly including wirelessly connected peripherals. Another point to note is that the power cord from the device to the power adapter is slightly shorter than most and the power adapter itself is quite large meaning care needs to be taken when using a US/EU to AU adapter for example. Overall this is a powerful mini PC (relative to similar form factor devices but excluding the higher-end Intel NUCs and comparable models) and the addition of capable graphics makes gaming possible together with light video editing. Equipped with a very good selection of ports and features including multiple configurable storage options, the GT-R makes a great impression as one of the first AMD based mini PCs. The only negative is that the fans are quite noisy when the processor is under load. Read more

today's leftovers

  • Mesa To Join Other Open-Source Projects With "Main" For Primary Code Branch

    This week Mesa developers began drafting plans for transitioning their primary Git branch to "main", following the naming plans of other open-source projects using Git. With Git now allowing a configurable default branch and GitHub working to transition from "master" to "main" as their default Git branch name, various other open-source projects have also been working to change their default Git branch name. Most open-source projects have been settling for "main" as the best and most descriptive default branch name rather than alternatives like trunk, default, etc. Mesa developers are similarly aiming for a "main" transition.

  • Linux Weekly Roundup: Ubuntu 20.04.1, LibreOffice 7, Pinta – Aug 8, 2020

    Here’s a recap for the week in the form of weekly roundup, curated for you from the Linux and opensource world on application updates, new releases, distribution updates, major news, and upcoming trends. This week there has been plenty of app updates, distribution release announced. With so many moving items happening all around the Linux and the open-source world, it is not always possible to cover the updates, especially the minor releases of news.

  • How to Apply Blur Effect in Ubuntu 20.04 Gnome Desktop
  • Install latest version apache on ubuntu from source
  • Setting Up Amavis and ClamAV on Ubuntu Mail Server
  • The weekend round-up: tell us what play button you've been clicking recently

    What's that? It's the weekend? It can't be already can it? Yes. It's time for the weekend chat about what we've been playing and what you've been playing. There's been so many good Linux supported releases lately I've been a bit spoilt for choice including these just in the last week: DemonCrawl, UnderMine, The Battle of Polytopia, Littlewood, Monster Crown, Core Defense and Hellpoint (plus plenty more I've missed).

  • A Plague Tale: Innocence | Linux Gaming | Ubuntu 20.04 | Steam Play

    A Plague Tale: Innocence running through Steam Play on Linux.

  • Recovering 2.11BSD, fighting the patches

    Well, if we have patch 195, and all 195 patches, what's the problem? Why can't you do a simple for loop and patch -R to get back to original? And for that matter, why were no copies of the original saved?

    Turns out the root of both of these problems can be summarized as 'resource shortage'. Back in the day when this was released, 100MB disks were large. The release came on 2 mag tapes that held 40MB each. Saving a copy of these required a substantial amount of space. And it was more important to have the latest release, not the original release, for running the system. It was more efficient and better anyway.

    In addition to small disk space, these small systems were connected via USENET or UUCP. These connections tended to be slow. Coupled with the small size of the storage on the PDP-11s running 2.11BSD, the patches weren't what we think of as modern patches. The patches started before the newer unified diff format was created. That format is much more efficient that the traditional context diffs. In addition, compress(1) was the only thing that could compress things, giving poor compression ratios. The UUCP transport of usenet messages also mean that the messages had to be relatively short. So, this mean that the 'patches' were really an upgrade process, that often included patches. But just as often, it included instructions like this from patch 4: [...]

  • NetBSD on the NanoPi NEO2

    The NanoPi NEO2 from FriendlyARM has been serving me well since 2018, being my test machine for OpenBSD/arm64 related things.

    As NetBSD/evbarm finally gained support for AArch64 in NetBSD 9.0, released back in February, I decided to give it a try on this device. The board only has 512MB of RAM, and this is where NetBSD really shines. Things have become a lot easier since jmcneill@ now provides bootable ARM images for a variety of devices, including the NanoPi NEO2.

  • Linux kmod tools on macOS

    First, this does not mean you can load Linux kernel modules on macOS. This port is far more boring than that. Recently I migrated from Travis-CI over to GitHub Actions for rpminspect. I took some time to understand how GitHub Actions worked and expanded the CI tests to run across Fedora rawhide, the latest release of Fedora, Debian Testing, Ubuntu, OpenSUSE Leap, OpenSUSE Tumbleweed, CentOS 8, CentOS 7, and Arch Linux. I wanted to prove that the software was portable across different distributions, but then that had me thinking about non-Linux platforms. GitHub Actions offers macOS as a platform, so what if I built things there too? Gaining access to a remote macOS VM (thanks, jbair), I was able to start working on porting rpminspect. The first problem I hit was the lack of libkmod from the Linux kmod project. Makes sense that this would not exist on macOS. All rpminspect does with libkmod is open and read Linux kernel modules, so porting it to macOS is technically possible. So I decided to give that a try.

  • We may wind up significantly delaying or mostly skipping Ubuntu 20.04

    The highest priority machines to upgrade are our remaining Ubuntu 16.04 machines, which will be going out of support in April of next year. Fortunately we don't have very many of them compared to our 18.04 machines, so there is not a huge amount of work to do. Unfortunately, most of our Exim based mail machines are 16.04 and the 20.04 version of Exim is a significantly disruptive upgrade, plus a number of the remaining machines are delicate to upgrade (our Samba server, for example).

    This opens up the issue of what Ubuntu version to upgrade these 16.04 machines to. Normally we'd upgrade them to Ubuntu 20.04, but normally we'd already be running less critical machines on 20.04 and getting experience with it; this time they'd be among our first 20.04 machines. On the other side, we're already running Ubuntu 18.04 in general and in some cases running the same services on 18.04 as we currently do on 16.04 (we have a couple of 18.04 Exim machines, for example). This makes upgrading most or all of our 16.04 machines to 18.04 instead of 20.04 a reasonably attractive proposition, especially for Exim based machines. We'd have to upgrade them again in two years when 22.04 comes out and 18.04 starts going out of support, but hopefully in two years the situation will be a lot different.

  • DebConf8

    Also this is my 6th post in this series of posts about DebConfs and for the last two days for the first time I failed my plan to do one post per day. And while two days ago I still planned to catch up on this by doing more than one post in a day, I have now decided to give in to realities, which mostly translates to sudden fantastic weather in Hamburg and other summer related changes in life. So yeah, I still plan to do short posts about all the DebConfs I was lucky to attend, but there might be days without a blog post. Anyhow, Mar de la Plata. When we held DebConf in Argentina it was winter there, meaning locals and other folks would wear jackets, scarfs, probably gloves, while many Debian folks not so much. Andreas Tille freaked out and/or amazed local people by going swimming in the sea every morning. And when I told Stephen Gran that even I would find it a bit cold with just a tshirt he replied "na, the weather is fine, just like british summer", while it was 14 celcius and mildly raining. DebConf8 was the first time I've met Valessio Brito, who I had worked together since at least DebConf6. That meeting was really super nice, Valessio is such a lovely person. Back in 2008 however, there was just one problem: his spoken English was worse than his written one, and that was already hard to parse sometimes. Fast forward eleven years to Curitiba last year and boom, Valessio speaks really nice English now.

  • 9 of the Best Firefox Addons for Social Media Enthusiasts

    Are you active in social media? If you’re using the Firefox browser, there are many extensions that will save you time, connect better with your audience, and boost your overall experience. The following is our shortlisted selection of some of the best Firefox addons for social media enthusiasts. Each has been verified for delivering what it promises and is quite easy to use. 1. Facebook Container For those active on the social scene, using Facebook is easier as a login option. [...] Love them or hate them, emojis may have become the official language of the Internet. If you’re running out of emoji styles to describe a specific mood or reaction, Emoji Cheatsheet just may give you the perfect idea. The emojis you click are automatically saved to your clipboard so that you can paste it on any social media site.

  • U is for Unreliable UI (or: Why Firefox's "Do this automatically this from now on" checkbox is so flaky, and how to work around it)

    It's been a frustration with Firefox for years. You click on a link and get the "What should Firefox do with this file?" dialog, even though it's a file type you view all the time -- PDF, say, or JPEG. You click "View in browser" or "Save file" or whatever ... then you check the "Do this automatically for files like this from now on" checkbox, thinking, I'm sure I checked this last time. Then a few minutes later, you go to a file of the exact same time, and you get the dialog again. That damn checkbox is like the button on street crossings or elevators: a no-op to make you think you're doing something.

NanoPi and Raspberry Pi

  • NanoPi NEO3

    A tiny, headless SBC based on the 64-bit quad-core RockChip RK3328 SoC along with up to 2GB RAM. I/O includes GbE and 3x USB (2x 3.0 + 1x 2.0), plus a 26-pin expansion header various GPIO signals.

  • Raspberry Pi makes Japanese keyboard

    It’s quite a complex keyboard, with three different character sets to deal with.

    ‘Figuring out how the USB keyboard controller maps to all the special keys on a Japanese keyboard was particularly challenging, with most web searches leading to non-English websites,’ say the Pi people, ‘we ended up reverse-engineering generic Japanese keyboards to see how they work, and mapping the keycodes to key matrix locations. We are fortunate that we have a very patient keyboard IC vendor, called Holtek, which produces the custom firmware for the controller.’

  • Raspberry Pi Release Japanese Keyboard Variant

    The Japanese keyboard is the latest layout available. Last month we saw the release of Swedish, Portuguese, Danish and Norwegian layouts of the official keyboard. All of the keyboards come with three USB 2.0 type-A ports, adding much needed extra ports to your Raspberry Pi. Available in two color choices, red and white or black and grey, this new keyboard has been designed to work with all three Japanese character sets.

  • The fastest USB storage options for Raspberry Pi

    After posting my tests concerning UASP support in USB SATA adapters, I got an email from Rob Logan mentioning the performance of some other types of drives he had with him. And he even offered to ship a few drives to me for comparisons!

Programming Leftovers

  • Fujitsu Begins Adding A64FX Support To GCC Compiler

    The Fujitsu A64FX ARM processor that has 48 cores per node and 32GB of HBM2 memory that currently powers the fastest supercomputer is beginning to see GCC compiler support. Fujitsu months ago upstreamed A64FX support to the LLVM/Clang compiler. It appears this ARMv8.2-based chip with 512-bit SIMD is using LLVM/Clang as its preferred compiler. But now Fujitsu is also upstreaming GCC support for their high performance A64FX.

  • Jussi Pakkanen: The second edition of the Meson manual is out

    I have just uploaded the second edition of the Meson manual to the web store for your purchasing pleasure.

  • Junichi Uekawa: Started writing some golang code.

    Started writing some golang code. Trying to rewrite some of the tools as a daily driver for machine management tool. It's easier than rust in that having a good rust compiler is a hassle though golang preinstalled on systems can build and run. go run is simple enough to invoke on most Debian systems.

  • Url Shortner in Golang

    I decided to write my own URL shortner and the reason for doing that was to dive a little more into golang and to learn more about systems. I have planned to not only document my learning but also find and point our different ways in which this application can be made scalable, resilient and robust.

  • LLVM Clang 11 Has A Nice Build Speed Improvement With New Feature For Pre-Compiled Headers

    There are many improvements in LLVM/Clang 11.0 due out in the weeks ahead though an interesting change merged prior to last month's code branching that slipped under our radar... If using the clang-cl driver for MSVC or when otherwise making use of pre-compiled headers (PCH) functionality, there is a new option that can offer significant build time speed-ups. When making use of Clang PCH functionality for leveraging pre-compiled headers, Clang 11.0 is introducing the -fpch-instantiate-templates option separate from the existing PCH options. This -fpch-instantiate-templates option instantiates templates already while generating a precompiled header instead of instantiating every time the pre-compiled header is used. Avoiding the instantiation each time the pre-compiled header is used can provide measurable build time improvements. Aside from the MSVC clang-cl drop-in, this feature though isn't enabled by default since it can result in errors if the source header file is not self-contained.

  • Call for Code Daily: open source projects and answered calls

    The power of Call for Code® is in the global community that we have built around this major #TechforGood initiative. Whether it is the deployments that are underway across pivotal projects, developers leveraging the starter kits in the cloud, or ecosystem partners joining the fight, everyone has a story to tell. Call for Code Daily highlights all the amazing #TechforGood stories taking place around the world. Every day, you can count on us to share these stories with you. Check out the stories from the week of August 3rd:

  • PSF GSoC students blogs: Week 6 Check-in

    Works towards analyzing multistage dockerfile. I combined the draft PR and the review from my mentors, the new commit is the first step of my plan. We split the multistage dockerfile into seperate dockefiles for build. Here are the changes in the new commit. 1. Modified function check_multistage_dockerfile() to return. 2. Remove function split_multistage_dockerfile() since we are working on the building stage. split_multistage_dockerfile() can be improved on analyze stage.

  • Weekly Python StackOverflow Report: (ccxxxix) stackoverflow python report
  • Send WhatsApp media/message using Python.

    Though there are many scripts available which are almost free but later on leads to getting blocked by Whatsapp. We can use Twilio Library for sending and receiving whatsapp messages even for WhatsApp bussiness.

  • Generate a random number in Java

    Java contains many ways to generate random numbers. The random number can be int, long, float, double, and Boolean. Math.random class and Random class are mostly used to generate random numbers in Java. The uses of these classes are shown in this tutorial by using various examples. [...] The random class has many methods to generate different types of random numbers, such as nextInt(), nextDouble(), nextLong, etc. So, the integer and fractional numbers can be generated by using the appropriate method of this class. You have to create an object to use in this class.

  • Open Source Jenkins CI/CD Project Graduates From CD Foundation

    Officially launched by the Linux Foundation in March 2019, the CD Foundation includes in its project portfolio some of the most widely used and deployed CI/CD tools, including Jenkins, Spinnaker and Tekton. The open source Jenkins CI/CD project gains more community participation and a roadmap for future improvements.