PRESS-NEWS.org - Press Release Distribution
PRESS RELEASES DISTRIBUTION

An efficient method for detecting concurrency errors in object-oriented programs

An efficient method for detecting concurrency errors in object-oriented programs
2013-02-06
(Press-News.org) Owing to the prevalence of multicore processors, more and more programs are written in a multi-threaded style to improve performance. However, associated concurrency errors have become an inconvenient cause of system faults. The research group from State Key Laboratory of Software Engineering, School of Computers, Wuhan University, focused on finding methods to improve the trustworthiness of concurrent programs. By analyzing shortcomings of existing methods, they developed a more efficient method for detecting concurrency errors in object-oriented programs. Exploiting a static code analysis technique to guide test case generation, they proposed a method to recognize real concurrency errors quickly. Their work, entitled "An efficient method for detecting concurrency errors in object-oriented programs", was published in SCIENCE CHINA Information Sciences 2012, Vol 55(12).

Improving CPU performance solely through manufacturing technology has reached its limits in recent years, owing to the physical limitations of semiconductor-based microelectronics, which have resulted in significant heat dissipation and data synchronization problems. Commercial incentives and technical factors have led to the development of multicore CPUs, which in turn, have had a great impact on software development. Multi-threaded and multi-processor programs on shared memory machines have become increasingly important and prevalent in the past few years. While concurrency can take full advantage of the performance of multicore processors, it makes the programs more likely to be untrusted. A study performed at Microsoft reports that over 60% of developers face concurrency issues and most of the respondents handle concurrency errors on a monthly basis. Not only do concurrency errors reduce the productivity of developers, but they can cause serious problems and disasters, such as the Northeastern blackout and the Therac-25 accident, which were caused by race conditions. So how to simplify the development process and improve the quality of concurrent programs is a highly relevant and important issue urgently in need of solving.

In concurrent programs, threads can interact with each other while they are executing. Thus, the number of possible execution paths in the program can be extremely large resulting in an indeterminate outcome. Concurrent use of shared resources is a major source of indeterminacy leading to concurrency errors. Concurrency errors are more difficult to detect compared to those in sequential programs because they occur in a specific interleaving of memory-access sequences. The non-deterministic behavior of concurrent programs exacerbates reproducing the specific interleaving. Monitoring and investigating all memory accesses is practically impossible because the number of possible interleavings increases exponentially with the number of threads.

There are several works dealing with detecting concurrency errors. These studies can be divided into two types, namely, static and dynamic testing methods. Model checking, theorem proving and code analysis are three typical static methods. Model checking detects errors by traversing the abstract state space. Although research in space reducing techniques has made great progress, it is still difficult to cope with the state space explosion caused by concurrency. Theorem proving is a sound and complete method to guarantee a program error-free, but it is difficult and time-consuming. Although code analysis is widely used for different purposes, it can only detect shallow concurrency errors. Above all, static methods do not scale well when analyzing concurrent programs owing to the large interleaved space they need to explore.

Dynamic methods detect errors mainly by executing the code. In practice, dynamic testing plays an important role in detecting concurrency errors. There are many dynamic data race detectors, which search for unsynchronized conflicting accesses to shared data by analyzing happens-before relations, checking whether the program follows a locking discipline, or through a combination of these techniques. Most of the existing works can only detect one type of concurrency error, such as a data race, atomicity violation, or deadlock. The method presented in this work is a general approach suitable for detecting many common types of concurrency errors. Integrating static analysis to generate test cases dramatically improves the efficiency and precision. By using an efficient method to decide whether a runtime exception is a real error, this method offers a further advantage in that it does not report false positives.

This work focuses on detecting thread-unsafe classes in object-oriented programs. In general, the proposed method uses three steps to detect concurrency errors in classes using dynamic analysis. First, a generation mechanism has been designed to generate concurrency test cases using a tested class that may run into a state exposing an error. Next, the test case is executed with different code interleavings to expose the error. Finally, the method analyzes the execution result and decides whether the error in execution is a real concurrency error. The key parts and operations in this method for deciding whether a class is thread-safe are illustrated in the following figure.

The innovation of this work relates mainly to two aspects. The researchers propose a heuristic method for automatically generating test cases for concurrency errors. By statically analyzing the class code, the method gains useful information to generate a test case set with high probability of triggering concurrency errors. In addition, the researchers propose an efficient technique for detecting concurrency errors by analyzing dynamic execution results. They use the concept of "linearization" to distinguish concurrency errors and serial errors.

Implementation and promotion of this work will increase development efficiency of concurrency software, and improve the dependability of concurrent systems. It will contribute greatly towards reducing the complexity of concurrency error detection, thereby reducing manual overhead and economic cost.

The implementation and realization of this work was a collaborative effort involving many researchers and doctoral students. The research project was partially supported by a grant from the National Natural Science Foundation of China. This work greatly advances research in the area of trusted software. The researchers suggest that their work can be improved in many different ways. For example, it can be extended to deal with multi-variable errors and use more powerful heuristic strategies to generate test cases.



INFORMATION:

See the article: He Y X, Wu W, Chen Y. An efficient method for detecting concurrency errors in object-oriented programs. SCI CHINA Inf Sci, 2012 Vol. 55 (12): 2774-2784 http://info.scichina.com:8083/sciFe/EN/abstract/abstract509421.shtml

Science China Press
http://www.scichina.com/


[Attachments] See images for this press release:
An efficient method for detecting concurrency errors in object-oriented programs

ELSE PRESS RELEASES FROM THIS DATE:

Pest uses plant hairs for protection

Pest uses plant hairs for protection
2013-02-06
Everyone needs to eat. But it's a dog-eat-dog world, and with the exception of the top predators, everyone also gets eaten. To cope with this vicious reality, a tiny insect that eats plants has learned to employ the plant's hairs for physical protection from its beetle predator. The pest is called the cycad aulacaspis scale, and its invasion into numerous countries in recent years has caused immeasurable loss of biodiversity. Cycads belong to an ancient lineage of plants that date to the dinosaur era, and the pest requires a cycad plant for food. The insect's recent ...

Traumatic brain injury complications common among US combat soldiers

2013-02-06
U.S. soldiers in combat often suffer constricted blood vessels and increased pressure in the brain — significant complications of traumatic brain injuries, according to research presented at the American Stroke Association's International Stroke Conference 2013. "Research shows that traumatic brain injury is a hallmark of recent military conflicts, affecting nearly a third of all wounded soldiers," said Alexander Razumovsky, Ph.D., lead researcher and director of Sentient NeuroCare Services in Hunt Valley, Md. Constricted blood vessels in the brain are cerebral vasospasm. ...

Smoking marijuana associated with higher stroke risk in young adults

2013-02-06
Marijuana, the most widely used illicit drug, may double stroke risk in young adults, according to research presented at the American Stroke Association's International Stroke Conference 2013. In a New Zealand study, ischemic stroke and transient ischemic attack (TIA) patients were 2.3 times more likely to have cannabis, also known as marijuana, detected in urine tests as other age and sex matched patients, researchers said. "This is the first case-controlled study to show a possible link to the increased risk of stroke from cannabis," said P. Alan Barber, Ph.D., M.D., ...

Native Hawaiians have bleeding strokes at earlier age, independent of meth use

2013-02-06
Native Hawaiians and Pacific Islanders have more bleeding strokes at an earlier age than other people independent of methamphetamine abuse, according to research presented at the American Stroke Association's International Stroke Conference 2013. "Drug abuse is a huge problem here and it definitely is a cause of hemorrhagic stroke," said Kazuma Nakagawa, M.D., lead investigator and assistant professor of medicine at the University of Hawaii. "But Native Hawaiians and Pacific Islanders are experiencing this form of stroke at a younger age even without methamphetamine use. ...

Tai Chi exercise may reduce falls in adult stroke survivors

2013-02-06
Tai Chi may reduce falls among adult stroke survivors, according to research presented at the American Stroke Association's International Stroke Conference 2013. Compared to survivors receiving usual care or participating in a national fitness program for Medicare-eligible adults called SilverSneakers®, those practicing Tai Chi had the fewest falls. Tai Chi is a martial art dating back to ancient China. It includes physical movements, mental concentration and relaxed breathing. "Learning how to find and maintain your balance after a stroke is a challenge," said Ruth ...

Brain research provides clues to what makes people think and behave differently

Brain research provides clues to what makes people think and behave differently
2013-02-06
Differences in the physical connections of the brain are at the root of what make people think and behave differently from one another. Researchers reporting in the February 6 issue of the Cell Press journal Neuron shed new light on the details of this phenomenon, mapping the exact brain regions where individual differences occur. Their findings reveal that individuals' brain connectivity varies more in areas that relate to integrating information than in areas for initial perception of the world. "Understanding the normal range of individual variability in the human ...

Induction of mild inflammation leads to cognitive deficits related to schizophrenia

2013-02-06
Researchers at the Institute for Comprehensive Medical Science, Fujita Health University and the National Institute for Physiological Sciences, Japan, along with colleagues from 9 other institutions, have identified an exceptional mouse model of schizophrenia. After screening over 160 mutant mouse strains with a systematic battery of behavioral tests, they identified a mutant mouse lacking the Schnurri-2 protein (Shn-2 KO) that exhibits behavioral deficits and other brain features consistent with schizophrenia. Shn-2 is an NF-B site-binding protein that binds enhancers ...

The wings of the Seagull Nebula

The wings of the Seagull Nebula
2013-02-06
Running along the border between the constellations of Canis Major (The Great Dog) and Monoceros (The Unicorn) in the southern sky, the Seagull Nebula is a huge cloud mostly made of hydrogen gas. It's an example of what astronomers refer to as an HII region. Hot new stars form within these clouds and their intense ultraviolet radiation causes the surrounding gas to glow brightly. The reddish hue in this image is a telltale sign of the presence of ionised hydrogen [1]. The Seagull Nebula, known more formally as IC 2177, is a complex object with a bird-like shape that is ...

Study points to possible cause of, and treatment for, non-familial Parkinson's

2013-02-06
New York, NY (February 6, 2013) — Columbia University Medical Center (CUMC) researchers have identified a protein trafficking defect within brain cells that may underlie common non-familial forms of Parkinson's disease. The defect is at a point of convergence for the action of at least three different genes that had been implicated in prior studies of Parkinson's disease. Whereas most molecular studies focus on mutations associated with rare familial forms of the disease, these findings relate directly to the common non-familial form of Parkinson's. The study was published ...

X-rays reveal uptake of nanoparticles by soya bean crops

X-rays reveal uptake of nanoparticles by soya bean crops
2013-02-06
Scientists have, for the first time, traced the nanoparticles taken up from the soil by crop plants and analysed the chemical states of their metallic elements. Zinc was shown to dissolve and accumulate throughout the plants, whereas the element cerium did not dissolve into plant tissue. The results contribute to the controversial debate on plant toxicity of nanoparticles and whether engineered nanoparticles can enter into the food chain. The study was published on 6 February 2013 in the journal ACS Nano. The international research team was led by Jorge Gardea-Torresdey ...

LAST 30 PRESS RELEASES:

WashU researchers map individual brain dynamics

Technology for oxidizing atmospheric methane won’t help the climate

US Department of Energy announces Early Career Research Program for FY 2025

PECASE winners: 3 UVA engineering professors receive presidential early career awards

‘Turn on the lights’: DAVD display helps navy divers navigate undersea conditions

MSU researcher’s breakthrough model sheds light on solar storms and space weather

Nebraska psychology professor recognized with Presidential Early Career Award

New data shows how ‘rage giving’ boosted immigrant-serving nonprofits during the first Trump Administration

Unique characteristics of a rare liver cancer identified as clinical trial of new treatment begins

From lab to field: CABBI pipeline delivers oil-rich sorghum

Stem cell therapy jumpstarts brain recovery after stroke

Polymer editing can upcycle waste into higher-performance plastics

Research on past hurricanes aims to reduce future risk

UT Health San Antonio, UTSA researchers receive prestigious 2025 Hill Prizes for medicine and technology

Panorama of our nearest galactic neighbor unveils hundreds of millions of stars

A chain reaction: HIV vaccines can lead to antibodies against antibodies

Bacteria in polymers form cables that grow into living gels

Rotavirus protein NSP4 manipulates gastrointestinal disease severity

‘Ding-dong:’ A study finds specific neurons with an immune doorbell

A major advance in biology combines DNA and RNA and could revolutionize cancer treatments

Neutrophil elastase as a predictor of delivery in pregnant women with preterm labor

NIH to lead implementation of National Plan to End Parkinson’s Act

Growth of private equity and hospital consolidation in primary care and price implications

Online advertising of compounded glucagon-like peptide-1 receptor agonists

Health care utilization and costs for older adults aging into Medicare after the affordable care act

Reading the genome and understanding evolution: Symbioses and gene transfer in leaf beetles

Brains of people with sickle cell disease appear older

Elena Belova and Yevgeny Raitses recognized for groundbreaking plasma physics research

SOX9 overexpression ameliorates metabolic dysfunction-associated steatohepatitis through activation of the AMPK pathway

Florescent probes illuminate cholesterol and Alzheimer’s research

[Press-News.org] An efficient method for detecting concurrency errors in object-oriented programs