Incorrect mathematical expression
Technology Updates

Cores That Don’t Count: What if your Processor Thinks 2+2=5?

Cores That Don’t Count: What if Your Processor Thinks 2+2=5?

Incorrect Mathematical Expression


Software engineers are no strangers to bugs, constantly battling them in the trenches of code. But as systems grow more complex, so do the bugs. Imagine the headache of dealing with a rogue processor core that, under certain conditions, decides that 2+2 equals 5. Imagine the frustration when that error happens silently. This is not a far-fetched nightmare but a reality uncovered by recent research from Google.

In the vast server fleets that power the internet, we usually assume processors either work perfectly or fail in obvious, detectable ways. But Google’s findings challenge this assumption, introducing us to “mercurial cores”—processors that occasionally fail silently, causing incorrect computations without any immediate warning. These errors are called silent “corrupt execution errors” (CEEs).


Why Are CEEs So Hard to Handle?

At first glance, silent failures in processors may seem like just another issue in an already unreliable hardware world. After all, we’ve dealt with similar challenges in storage and networking for decades. But detecting computational errors is far trickier.

Unlike storage and network issues, where data corruption is relatively easy to detect and correct, computational errors often remain hidden until it’s too late. And, the stakes are much higher. Imagine a rogue core miscomputing a database query or breaking cryptographic calculations. In these cases, one small error can propagate and cause significant damage before it’s even noticed. Worse, because these errors are tied to specific cores and specific instructions, testing for them comprehensively is both time-consuming and expensive.

While in case of storage or networking errors we can use redundancy or error-correction techniques with minimal extra cost, CEEs are far harder to catch. Why? The nature of the failure itself. With mercurial cores, errors strike unpredictably and infrequently, often tied to specific instructions under rare conditions. To detect them reliably, you’d need to replicate every computation across multiple cores and vote on the results, tripling the computational effort.


One may never encounter such a bug in their entire career, but when they do, it could be catastrophic. Few of the novel bugs observed due to CEE are:

  • Violation of lock (semaphore) semantics
  • A deterministic AES mis-computation, wherein encryption and decryption on the same core was yielding expected result, but encrypting on one and decrypting on another was resulting in gibberish
  • Corruption affecting garbage collection, in a storage system, causing live data to be lost.
  • Database index corruption, leading to some queries, being nondeterministic
  • Corruption of kernel state resulting in crashes and application malfunctions

What Causes These Rogue Errors?

Mercurial cores arise from the increasing complexity in modern CPU designs and the ongoing miniaturization of silicon components. These make processors more vulnerable to subtle defects that can escape manufacturing tests. Additionally, these errors can become more likely as processor cores age.


While the exact CEE rate is not disclosed, it was observed on the order of a few mercurial cores per several thousand machines.


Troubleshooting the Elusive

What makes this even more fascinating (or frustrating, depending on how you look at it) is that tracking down the root cause of mercurial cores can feel like searching for a needle in a haystack. These cores might work perfectly 99.9% of the time, only to misfire on rare occasions. You could see one core malfunctioning, while all others on the same chip operate flawlessly. It’s a nightmare scenario for engineers trying to ensure system reliability.


So, What Can Be Done?

The solution isn’t simple. Google’s research suggests a variety of potential approaches for detection, such as observing core-specific patterns for the error signals, like application or kernel level crashes, testing CPU cores while they are serving real workload, by scheduling a low priority task running CEE tests, etc.

Similarly, it suggests different approaches for mitigations like, using two cores to do computation in lock-step mode, triple modular redundancy – where computations are performed in triplicate and results are voted, cost effective application specific detection, such as computing an invariant over a database record before committing a transaction, etc. It is also important to note that some of these techniques may result in significant performance costs.

As we push the boundaries of processor technology, it’s likely that issues like these will become more common. What was once a rare, nearly invisible problem for a few hyperscalers is now on the radar of the entire tech industry. At the same time, it also opens up new opportunities for researchers in the area of operating systems and compilers.


Sounds intriguing? You can dive deeper into the fascinating world of mercurial cores by reading Google’s full research paper: Cores That Don’t Count

CodeGenie-Hackathon by Tark Technologies
Updates

Codegenie-2023 | Unleash your coding skills & get a chance to win an iPad and many..


Codegenie-2023 | Unleash your coding skills & get a chance to win an iPad and many..

Unleash your coding skills & get a chance to win an iPad and many more exciting prizes!

Tark Technologies is excited to host a Hackathon exclusively for 3rd year IT/CE engineering students of all Saurashtra (Guj) based institutes to demonstrate their programming and problem-solving skills.

With 25+ prizes (including an Apple iPad and 5 OnePlus Smartwatches) up for grabs, the stakes are high, and the chance to demonstrate your unparalleled abilities has never been greater! 

Please follow this link for latest updates about the event.


*Qualifiers for the final round (onsite hackathon), and winners of the qualifier round will also be notified over email and phone.


The hackathon is organized in two rounds: 

1. QUALIFIER

  • Online Programming contest on March 5, 2023
  • In this round, the participant will solve two algorithmic problems
  • Any of these programming languages can be used to solve the problem: C, C++, C#, Java, Python

  • Top 30 performers will be chosen for Round-2

Rewards:

  • Top 20 winners will get a premium laptop bag

2. FINAL

  • Full-day hackathon at Tark campus on March 12, 2023
  • In this round, the participant will solve a programming problem, depicting real world scenario
  • The participant should use Object Oriented Programming, Data Structures and Algorithms (DSA) concepts to solve the problem. It does not require UI/Database design 
  • Any of these programming languages can be used to solve the problem: C++, C#, Java, Python 

Rewards:

  • Apple iPad – 1st Winner
  • OnePlus Smartwatch – Next 5 Winners
  • Certificate & Goodies – Each participant of this round will receive a participation certificate and a bag of goodies! 


Please follow this link for latest updates about the event.

Important Notes

  • Registration for this event is exclusive to 3rd year Computer/IT engineering students from Saurashtra (Guj) colleges only.
  • Registrations are open until February 26, 2023. 
  • After registration, eligible students will receive an email invitation for the qualifier round. 
  • Participants can attend the qualifier round from anywhere with a PC and good internet connectivity. 
  • Participants must solve the problems independently and are not allowed to collaborate with other participants or seek any sort of external assistance.
  • Results of the qualifier round will be communicated via email by March 8th, 2023. 
  • Students qualifying for round 2 will be informed separately via email. 
  • Make sure to enter your personal email address so you can receive important updates about the event. 
  • Each winner will have to collect the prize from Tark’s office. 

Terms & Conditions

  • Tark Technologies reserves the right to disqualify any participant that violates the rules or fails to meet the judging criteria. Cheating, including plagiarism, use of unauthorized materials, or any other form of dishonesty, will result in immediate disqualification. 
  • All submissions will be evaluated by a panel of judges selected by the company, and their decisions will be final and binding. 
  • The company reserves the right to announce the winners and use their names, photos and submissions for marketing and promotional purposes. 
  • No cash alternative to the prizes will be offered. The prizes are not transferable and are subject to availability. We reserve the right to substitute any prize with another of equivalent value without any prior notice.
  • If students are unable to participate due to issues related to software, online test platform, electricity, computer, or any other reason, they will not be given another chance. 
New-tark-logo
Updates

New Logo Launch | Say hello to the all-new Tark

New Logo Launch | Say hello to the all-new Tark

Tark is helping organizations to achieve exceptional growth through innovative solutions. And now, our logo shows that, too. 

Today marks an exciting new day for Tark. We’re officially launching our new logo and a refreshed, all-new look. This isn’t just a cosmetic change; it reflects who we are and what we aspire to become.

Along with our customers, we’ve made immense progress over the past few years. From modern technologies and tools to expanded offices and partnerships, we continue to evolve. And it was time for our brand to evolve, too.

One thing that hasn’t changed? Our core mission. We’re relentlessly dedicated to helping organizations design and implement highly scalable and reliable software solutions.

And, we wished for a new logo that successfully communicates our milestones of evolution along with reflecting our growth philosophy.

Just like we walk the extra mile to help our clients, with our new logo, we have stepped out of our comfort zone and have ventured into doing something that we have never done so far. And, here through this blog, we wish to narrate the details of our exhilarating journey of revamping our logo identity.

Our old logo with a broad ‘T’ in a dark blue circle and a light blue reflection hovering over the ‘T’ was crafted during the early days of Tark.  At that time, when the logo was designed, it perfectly articulated the vision and mission of the company. However, with the evolving digital media and the introduction of more personalized and interactive logos in various domains, the old logo turned out to be redundant. As it was created with lighter colors, when the logo was placed on colors other than white, or with the colors tweaked wrong, the logo used to look charmless and didn’t justify its purpose. Our old logo lacked the contemporary look and the kind of passion that we as an organization practice every day to help our clients achieve their goals.
 

Our new logo represents the brand’s philosophy of growth in an enchanting manner. The orange square has a white arrow in it and a square adjacent to each other forms letter “T”. The arrow shows the company’s ideology about helping organizations grow with their innovative and thoughtful solutions to real-world problems. The square represents a bundle of innovative solutions we provide to our customers, which are also balanced with all important aspects of software engineering.

Lower case alphabets of Tark represents the spirit of the company, which is an approachable, credible, and human-centric culture that allows us to easily connect with people. Orange color indicates our limitless passion for new technology, forward-thinking approach, and our determination to provide innovative software solutions to our clients.

Check out the detailing of our new logo that redefines us as a brand that believes in constant up-gradation and thereby helping our clients to realize their full potential with our association as the software consultants and the creators. It is a thrilling start to our new journey of growth and success! At the heart of it will always be our customers and the benefits they will get through our services. You’ll also see visual changes around Tark aligning with this new direction: on our website, advertising, social media. Stay tuned!