Language Selection

English French German Italian Portuguese Spanish

Latest Firefox on OpenPOWER/POWER and Arctic Fox 27.11.0

Filed under
Moz/FF
  • Firefox 82 on POWER goes PGO

    You'll have noticed this post is rather tardy, since Firefox 82 has been out for the better part of a week, but I wanted to really drill down on a couple variables in our Firefox build configuration for OpenPOWER and also see if it was time to blow away a few persistent assumptions.
    But let's not bury the lede here: after several days of screaming, ranting and scaring the cat with various failures, this blog post is finally being typed in a fully profile-guided and link-time optimized Firefox 82 tuned for POWER9 little-endian. Although it multiplies compile time by nearly a factor of 3 and the build process intermittently can consume a terrifying amount of memory, the PGO-LTO build is roughly 25% faster than the LTO-only build, which was already 4% faster than the "baseline" -O3 -mcpu=power9 build. That's worth an 84-minute coffee break! (-j24 on a dual-8 Talos II [64 threads], 64GB RAM.)

    The problem with PGO and gcc (at least gcc 10, anyway) is that all the .gcda files end up in the same directory as the built objects in an instrumented build. The build system, which is now heavily clang-centric (despite the docs, gcc is clearly Tier 2, since this and other things don't work), does not know how to handle or transfer the resulting profile data and bombs after running the test load. We don't build with clang because in previous attempts it never managed to fully build the browser on ppc64le and I'm sceptical of its code quality on this platform anyway, but since I wanted to verify against a presumably working configuration I did try a clang build first to see if anything had changed.

  • Arctic Fox 27.11.0 release

    This 2020 with COVID, quarantines and lockdown was and is a strange year, but it allowed me to take care of Arctic Fox quite a bit. A lot of work is going on in my Arctic Fox fork, which Matt dutifully imports.

    Thousands of commits flew in into this new release, tackling JavaScript upgrades, build fixes, further metro removal, JIT optimizations. SO much was imported from Firefox that this is really exciting!

More in Tux Machines

PHP 8.0 Released

PHP 8.0 is a major update of the PHP language. It contains many new features and optimizations including named arguments, union types, attributes, constructor property promotion, match expression, nullsafe operator, JIT, and improvements in the type system, error handling, and consistency. Read more Also: PHP 8.0 Officially Released With Many Language Additions, Better Performance

The Few, the Tired, the Open Source Coders

Sometimes open source coders simply walk away: Let someone else deal with this crap. Studies suggest that about 9.5 percent of all open source code is abandoned, and a quarter is probably close to being so. This can be dangerous: If code isn't regularly updated, it risks causing havoc if someone later relies on it. Worse, abandoned code can be hijacked for ill use. Two years ago, the pseudonymous coder right9ctrl took over a piece of open source code that was used by bitcoin firms—and then rewrote it to try to steal cryptocurrency. No one's quite sure what to do about open source burnout, but some think finding money for the coders might help. Programmer Ashley Williams is a member of the team creating the open source language Rust, and they're trying to set up a foundation to support core contributors, or get firms to keep contributors on staff. (Some of the largest open source projects thrive in precisely this fashion; firms like Facebook or Google pay some employees to work full-time on open source code.) Eghbal thinks subscriptions could offer new ways to pay for the work. Others worry that injecting pay can deform how and why the work is done in the first place. But we need to rethink the very idea of what crowdsourcing is capable of—and understand that it is perhaps more limited than promised. The open source revolution has been carried on the backs of some very weary people. Read more Also: Good News: Academics Can Make Their Articles Published In Top Journal Nature Freely Available As Open Access. Bad News: They Must Pay $11,000 For Each One

today's howtos

  • Add, Delete And Grant Sudo Privileges To Users In CentOS - OSTechNix

    A "sudo" user can run an administrative task or command which a normal user is not allowed to. This guide explains how to add, delete and grant sudo privileges to users in CentOS and other RHEL-based systems. The steps given below are tested in CentOS 8 minimal edition, however it should work on other RPM-based systems as well.

  • How To Install Moodle on CentOS 8 - idroot

    In this tutorial, we will show you how to install Moodle on CentOS 8. For those of you who didn’t know, Moodle is an Open Source Course Management System (CMS), also known as a Learning Management System (LMS) or a Virtual Learning Environment (VLE). It has become very popular among educators around the world as a tool for creating online dynamic web sites for their students. Moodle brings features to include assignment submission, online quizzes, wiki, grading, instant messages, discussion boards, and others. But since it’s modular software, it can be extended via plugins to add extra functionality. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step by step installation of Moodle course management system (CMS) on CentOS 8.

  • Solve error: cannot communicate with server dial unix /run/snapd.socket - Linux Shout

    Then this is because, after installation, the Daemon of SNAP is have not started yet and needs to start and enable manually by the user.

  • Running Multiple MariaDB Instances on Ubuntu 20.04 LTS – Linux Hint

    At times you may need to run multiple instances of the MariaDB database server software on the same computer/server. MariaDB has an official tool mysqld_multi to run multiple instances of the MariaDB database server software on the same computer/server. In this article, I am going to show you how to run multiple MariaDB database server instances on the same computer/server running the Ubuntu 20.04 LTS operating system. So, let’s get started.

  • Simple guide to install MongoDB on Ubuntu - LinuxTechLab

    MongoDB is an open-source general-purpose, document-based NoSQL database server which uses JSON documents. It is created keeping the current requirements of the cloud era & application developers in mind. It boasts many features, some of which are, Schemaless Provides replication Easy to scale-out index on any attribute auto-sharding Deep/rich query abilities, etc

  • The Calamares Series – everything you need to know about Calamares

    Like always some of the videos contain more information than the title suggests

  • Everything you need to know about pacman
  • Orchestrate event-driven, distributed services with Serverless Workflow and Kubernetes - Red Hat Developer

    Serverless workflows have gained renewed interest and usefulness with the rise of serverless architectures. Once seen as centralized and monolithic, they now play a key role in cloud-based event and service orchestration. Until recently, there was no vendor-neutral way to describe service orchestration, so developers were dependent on vendors and vendor implementations. We realized that we needed a common, standards-based language for describing serverless workflows. In this article, we introduce the Serverless Workflow specification, now in its 0.5 version release. Our goal with this project is to empower anyone to develop serverless workflow libraries, tooling, and infrastructure for modeling workflows across different cloud platforms.

Qt Desktop Days Outline/Talks

  • Qt Desktop Days – Day 1 - KDAB

    If you missed Qt Desktop Days, you might be wondering what you missed. No need to worry! We’re going to give you a day-by-day summary of some of the cool things that were discussed, demoed, and explained. (We’re uploading all of the videos to our YouTube channel, but we’ll provide the direct links to each talk here as well.)

  • Qt Desktop Days - Day 2 - KDAB

    The first session on day 2 was from Nyall Dawson who works for North Road but who is also a significant contributor to QGIS, the largest open-source GIS program in the world. Nyall explains why Qt is an awesome fit for this massive desktop application, and why he believes that Qt is partly responsible for its longevity and success. To understand exactly why QGIS is such a beast (over 1.5 million lines of code and over 500 code contributors), he explains what a GIS system is expected to do, like consuming and creating spatial data, creating high-impact and professionally designed maps, and doing geographical analysis – all with multiple coordinates, projects, and extreme accuracy. [...] Bluescape is a company that creates collaborative, multi-screen, multi-touch whiteboards – some pretty “Minority Report” type of stuff. Bluescape’s Romain Pokrzywka joined us to talk about how to really wrangle touch and pen input, and how to develop applications that need to live equally well across mouse and keyboard desktop, touch screen laptops, tablets, and mobile devices. Romain talks about the specifics of Qt multi-touch and pen support in both C++ and QML, gives us some of his hard-learned lessons about how to best develop applications that merge these features, and shares his tips and tricks on what works best (like what to do with those non-conformist mouse wheels). He also discusses what’s coming down the pike for Qt 6 when it comes to input API changes, including some long overdue changes.

  • Qt Desktop Days - Day 3 - KDAB

    If you’re building a desktop application today, should you consider building the UI with Qt Quick? That’s the question that KDABian Shantanu Tushar answers in this session. He walks us through the pros and cons of Qt Widgets versus Qt Quick, and explains that although there are still plenty of good reasons to use widgets, there are a lot of advantages that you’re missing if you dismiss a QML-based desktop app out-of-hand. But desktop apps aren’t the same as mobile ones, and having implemented many desktop applications in QML, Shantanu knows what works and what doesn’t. He explains how desktop apps are often more complex than mobile, and how he manages to tame QML complexity with imports, assets, and namespaces. He also covers issues that desktop developers need to handle such as screen layout trade-offs and styling to match native controls. Shantanu also gives us real-life examples of why and how to mix designer screens and implementation screens in the same application. If you’re thinking about going down the QML route with your app, you should really watch this talk before you begin.

  • Qt Desktop Days – Day 4 - KDAB

    If you need to play the widest variety of audio, video, or streaming formats on the planet, you probably know about VLC (the “cone player”). But did you know that VLC uses Qt? They didn’t always. Hear the history of this interesting project from Jean-Baptiste Kempf, one of the lead developers on VLC, a project started by rebellious French university students over two decades ago that is still going strong today. We learn from Jean-Baptiste some interesting platform constraints of the VLC project (like unbelievably, they still support OS/2!), and how their abstraction architecture has been able to grow and thrive without software bloat despite years of changing software, multiple new platforms, and loads of new features. We also learn what factors drove the switch from wxWidgets to Qt and what the team did to keep their high-performance video codecs working smoothly in their upcoming port from Qt4 to Qt5. If you’re tackling your own open-source project, the dynamic success of VLC as delivered by Jean-Baptiste might be just the inspiration you need.