Oracle Linux kernel developer Steve Sistare contributes this discussion on kernel scheduler improvements.
Load balancing via scalable task stealing
The Linux task scheduler balances load across a system by pushing waking tasks to idle CPUs, and by pulling tasks from busy CPUs when a CPU becomes idle. Efficient scaling is a challenge on both the push and pull sides on large systems. For pulls, the scheduler searches all CPUs in successively larger domains until an overloaded CPU is found, and pulls a task from the busiest group. This is very expensive, costing 10’s to 100’s of microseconds on large systems, so search time is limited by the average idle time, and some domains are not searched. Balance is not always achieved, and idle CPUs go unused.
I have implemented an alternate mechanism that is invoked after the existing search in idle_balance() limits itself and finds nothing. I maintain a bitmap of overloaded CPUs, where a CPU sets its bit when its runnable CFS task count exceeds 1. The bitmap is sparse, with a limited number of significant bits per cacheline. This reduces cache contention when many threads concurrently set, clear, and visit elements. There is a bitmap per last-level cache. When a CPU becomes idle, it searches the bitmap to find the first overloaded CPU with a migratable task, and steals it. This simple stealing yields a higher CPU utilization than idle_balance() alone, because the search is cheap, costing 1 to 2 microseconds, so it may be called every time the CPU is about to go idle. Stealing does not offload the globally busiest queue, but it is much better than running nothing at all.
Results
Stealing improves utilization with only a modest CPU overhead in scheduler code. In the following experiment, hackbench is run with varying numbers of groups (40 tasks per group), and the delta in /proc/schedstat is shown for each run, averaged per CPU, augmented with these non-standard stats:
%find – percent of time spent in old and new functions that search for idle CPUs and tasks to steal and set the overloaded CPUs bitmap.
steal – number of times a task is stolen from another CPU. Elapsed time improves by 8 to 36%, costing at most 0.4% more find time.
CPU busy utilization is close to 100% for the new kernel, as shown by the green curve in the following graph, versus the orange curve for the baseline kernel:
Stealing improves Oracle database OLTP performance by up to 9% depending on load, and we have seen some nice improvements for mysql, pgsql, gcc, java, and networking. In general, stealing is most helpful for workloads with a high context switch rate.
The code
As of this writing, this work is not yet upstream, but the latest patch series is at https://lkml.org/lkml/2018/12/6/1253. If your kernel is built with CONFIG_SCHED_DEBUG=y, you can verify that it contains the stealing optimization using
If you try it, note that stealing is disabled for systems with more than 2 NUMA nodes, because hackbench regresses on such systems, as I explain in https://lkml.org/lkml/2018/12/6/1250 .However, I suspect this effect is specific to hackbench and that stealing will help other workloads on many-node systems. To try it, reboot with kernel parameter sched_steal_node_limit = 8 (or larger).
Future work
After the basic stealing algorithm is pushed upstream, I am considering the following enhancements:
If stealing within the last-level cache does not find a candidate, steal across LLC’s and NUMA nodes.
Maintain a sparse bitmap to identify stealing candidates in the RT scheduling class. Currently pull_rt_task() searches all run queues.
Remove the core and socket levels from idle_balance(), as stealing handles those levels. Remove idle_balance() entirely when stealing across LLC is supported.
Maintain a bitmap to identify idle cores and idle CPUs, for push balancing.
MLB. The Show 19 brings you the best of baseball. Experience the ultimate duel: the 1v1 battle between hitter and pitcher to see who reigns supreme. Whether it be home runs, quick experiences, playing as legends, a full RPG experience or stiff Player vs Player competition; MLBTS 19 provides the perfect combination of authentic baseball experience mixed with video game fun.
Experience an explosive game of cat and mouse set in a vast open world - rendered with the award-winning Apex game engine. Experience an explosive game of cat and mouse set in a vast open world. In this reimagining of 1980?s Sweden, hostile machines have invaded the serene countryside, and you need to fight back while unraveling the mystery of what is really going on. By utilizing battle-tested guerilla tactics, you?ll be able to lure, cripple, or destroy enemies in intense, creative sandbox skirmishes.
Fimbul combines intense Viking battles with a deep story that unfolds through in-game comics to bring the frozen world of the Norse sagas to life. Immerse yourself in the blistering winter preceding Ragnarok ? The Fimbul Winter.
It?s the year 2030, the era of flying vehicles. A one-off championship for wheel based vehicles has been organised, with cutting-edge electric cars boosted by Xenon gas. Drift through cities like Tokyo and Dubai as fast as you can and claim eternal glory.
Former Sony And PlayStation Exec Kaz Hirai Is Retiring
In February it was announced that Kaz Hirai, who led the PlayStation business before being promoted to CEO of Sony, would step down and transition to the role of director, chairman. Now, Sony has announced that Hirai will be retiring from those roles effective June 18. Hirai will serve as senior advisor for the company and "will continue to provide counsel as requested by Sony's management team."
In a statement, Hirai lent his support to Kenichiro Yoshida, who replaced him as CEO of Sony on April 1. "Since passing the baton of CEO to Yoshida-san last April, as Chairman of Sony, I have had the opportunity to both ensure a smooth transition and provide support to Sony's management. I am confident that everyone at Sony is fully aligned under Yoshida-san's strong leadership, and are ready to build an even brighter future for Sony.
"As such, I have decided to depart from Sony, which has been a part of my life for the past 35 years. I would like to extend my warmest gratitude to all our employees and stakeholders who have supported me throughout this journey."
Yoshida added: "Hirai-san and I have been working on management reforms together since December 2013. While he will be retiring from both Chairman and our Board of Directors, we look forward to his continuing high-level support to Sony's management that encompasses a breadth of diverse businesses."
Hirai was instrumental in launching the PlayStation 2 and PlayStation 3, and went on to become CEO and president of Sony. In February, the PlayStation business had a management reshuffle, with Jim Ryan being appointed president and CEO of Sony Interactive Entertainment.
2019 is set to be quite a different year for the PlayStation division, particularly in the way it communicates and promotes its products to its audience and the wider gaming community. The company has pulled out of E3, where it traditionally debuted and showed off its biggest upcoming games.
Fans are looking to PlayStation Experience to be the tentpole PlayStation event for 2019. Sony opted to skip PlayStation Experience in 2018, so many are hoping to see it return this year. However, as of yet Sony hasn't indicated it has plans to host the show.
Sony has kicked off State of Play, however. This is a series of smaller, streamed showcases in the same vein as Nintendo's Directs. The first one yielded a new Iron Man VR title, as well as information on No Man's Sky VR and Mortal Kombat 11. You can read all the news from Sony's first State of Play to catch up on what happened.
Sony has said State of Play will return throughout the year to deliver updates on key titles. While the first episode wasn't exactly a barnstormer, the company has a number of big games on the way, including Death Stranding, The Last of Us: Part II, and Ghost of Tsushima, so upcoming episodes stand to be much more exciting.
Super Blood Hockey Brings Brutal Arcade Action To Switch Next Month
Digerati has revealed that it will be bringing Super Blood Hockey and its retro-flavoured violence to Nintendo Switch next month.
Described as “a violent homage to classic 8- and 16-bit ice hockey games” Super Blood Hockey lets you customise your line-up, take to the ice, and use fast-paced skills and bone-crunching brutality to dominate the game. You can take part in a single player tournament, or compete against friends in four-player local multiplayer.
The new console version even features dieting, showering, and some pretty shady performance-enhancing drugs. But hey, it’s only a video game, right? Here are some key features:
Key Features – Use superior skating, positioning, strategy and blood-splattering violence – Take on the world in a global tournament, where failure results in execution – Varied challenges and scenarios, including Turbo Mode and 12 vs 12 Mega Rumble – Paint the ice with the blood of your friends in 4-player local multiplayer – Franchise Mode: Create, recruit and manage your own custom team of inmates in a futuristic world of dystopic blood sports – Enjoy the retro beats of an original soundtrack by chiptunist Shawn Daley
As noted above, this one will arrive on Switch sometime in April (the date hasn’t been fixed just yet). It’ll then launch on PS4 and Xbox One in Q2 2019.
What do you think? Will you be giving this one a go? Share your thoughts with us in the comments.
Sega Reveals Spooky New Haunted Castle Track For Team Sonic Racing
Sega has revealed yet another track – and accompanying song – set to be playable in Team Sonic Racing. This time around we have a new ‘Haunted Castle’ setting.
You can see a teaser for the new track in the image above (which is all we have in terms of new visuals, unfortunately) and check out the music in the video below. The song was written by Sonic Mania composer, Tee Lopes, and performed by S.A.M.E featuring Tei Sena on violin.
As for the track itself, all we have to go on is the fact that players will encounter “mysterious ghosts haunting the halls of this treacherous map”. There are less than two months to go now until the game is finally in our hands, so at least we don’t have long to wait to get stuck in.
Are you looking forward to Team Sonic Racing? Have you been patiently waiting for it to release since it was first announced? Let us know in the comments.
Linux Release Roundup: Applications and Distros Released This Week
This is a continually updated article that lists various Linux distribution and Linux-related application releases of the week.
At It’s FOSS, we try to provide you with all the major happenings of the Linux and Open Source world. But it’s not always possible to cover all the news, specially the minor releases of a popular application or a distribution.
Hence, I have created this page, which I’ll be continually updating with the links and short snippets of the new releases of the current week. Eventually, I’ll remove releases older than 2 weeks from the page.
Posted by: xSicKxBot - 03-29-2019, 11:28 AM - Forum: Lounge
- No Replies
Pokemon Go Community Day For April Announced, Features Bagon
Now that March is nearly behind us and April is just around the corner, Niantic has shared the first details for April's Pokemon Go Community Day. The monthly event is scheduled to return on Saturday, April 13, and this time around it'll feature a rare Dragon Pokemon: Bagon.
All throughout the Community Day, Bagon will appear in the wild in greater numbers than it normally does, making it much easier to add some to your collection. Considering that Niantic typically introduces the Shiny form of that month's featured Pokemon during each Community Day, you'll also presumably have your first chance to catch a Shiny Bagon during this month's event.
Bagon is the base form of the powerful Dragon/Flying Pokemon Salamence, so you'll want to catch as many as you can during April's Community Day. If you manage to evolve any into Salamence up to an hour after the event ends, it will also learn an exclusive move, although Niantic hasn't revealed what that will be just yet.
Like March's Community Day, April's event will take place from 3-6 PM local time, rather than the usual schedule it followed. As an added incentive to participate, Niantic is also offering triple the usual amount of XP for capturing Pokemon. You can read more details about the event on the official Pokemon website.
That isn't the only event happening in Pokemon Go next month. From April 2-9, Niantic is also holding a Bug Out event. During that period, Bug Pokemon will appear more frequently than normal, and Incenses will last twice as long. You'll also be able to find special limited-time Field Research tasks revolving around Bug Pokemon from Poke Stops.
In the meantime, the Gen 4 Legendary Giratina is set to return to Raids beginning March 28. It will initially appear in its standard Altered Forme until April 2, when it'll transform into its Origine Forme. A new Limited Research event is also scheduled for March 30. During that, you'll find special Field Research tasks focusing on Lotad, and you'll even have your first opportunity to catch Shiny versions of Lotad and Castform.