• Title/Summary/Keyword: Multi-Threaded Software

Search Result 16, Processing Time 0.025 seconds

A Study on Filtering Techniques for Dynamic Analysis of Data Races in Multi-threaded Programs

  • Ha, Ok-Kyoon;Yoo, Hongseok
    • Journal of the Korea Society of Computer and Information
    • /
    • v.22 no.11
    • /
    • pp.1-7
    • /
    • 2017
  • In this paper, we introduce three monitoring filtering techniques which reduce the overheads of dynamic data race detection. It is well known that detecting data races dynamically in multi-threaded programs is quite hard and troublesome task, because the dynamic detection techniques need to monitor all execution of a multi-threaded program and to analyse every conflicting memory and thread operations in the program. Thus, the main drawback of the dynamic analysis for detecting data races is the heavy additional time and space overheads for running the program. For the practicality, we also empirically compare the efficiency of three monitoring filtering techniques. The results using OpenMP benchmarks show that the filtering techniques are practical for dynamic data race detection, since they reduce the average runtime overhead to under 10% of that of the pure detection.

A Framework for Detecting Data Races in Weapon Software (무기체계 소프트웨어의 자료경합을 탐지하기 위한 프레임워크)

  • Oh, Jin-Woo;Choi, Eu-Teum;Jun, Yong-Kee
    • IEMEK Journal of Embedded Systems and Applications
    • /
    • v.13 no.6
    • /
    • pp.305-312
    • /
    • 2018
  • Software has been used to develop many functions of the modern weapon systems which has a high mission criticality. Weapon system software must consider multi-threaded processing to satisfy growing performance requirement. However, developing multi-threaded programs are difficult because of concurrency faults, such as unintended data races. Especially, it is important to prepare analysis for debugging the data races, because the weapon system software may cause personal injury. In this paper, we present an efficient framework of analysis, called ConDeWS, which is designed to determine the scope of dynamic analysis through using the result of static analysis and fault analysis. As a result of applying the implemented framework to the target software, we have detected unintended data races that were not detected in the static analysis.

Design and Implementation of CORBA based on Multi-Threaded in Open Network Environments (개방형 네트워크 환경을 위한 멀티쓰레드 기반 코바 설계 및 구현)

  • Jang, Jong-Hyeon;Lee, Dong-Gil;Han, Chi-Mun
    • The KIPS Transactions:PartC
    • /
    • v.9C no.2
    • /
    • pp.213-220
    • /
    • 2002
  • Distributed competing system gives a new system architecture to be taken into consideration for solving the problems of interoperability of heterogeneous systems. In the present paper, CORBA based on multi-threaded interoperates with software blocks at physically isolated hardware. We show how archives optimal CORBA system from analysis of required functions, implementations of protocols and benchmarking of system performance in the Open Multi-service Network System Environment. The core features of our CORBA system are restricted Quality of Service based on priority, timeout service and exception status information notify to the related software blocks. And the objectives are design and implementation of high performance multi-threaded middleware and satisfied with extendibility, flexibility and stability of CORBA platform.

Deterministic Testing of Java Multi-Threaded Programs through Program Transformation (프로그램 변환을 통한 Java 다중 스레드 프로그램의 결정적 테스팅)

  • Chung, In-Sang
    • Journal of KIISE:Software and Applications
    • /
    • v.27 no.6
    • /
    • pp.607-617
    • /
    • 2000
  • Concurrent programs, which are composed of threads that can operate concurrently, are intrinsically nondeterministic. Therefore, we can not directly apply classical testing or debugging techniques developed for sequential programs to concurrent programs because of the nonreproducibility due to nondeterminism. In this paper, we present a source tranformation method to guarantee the reproducibility of multi-threaded programs written in Java programming language. Once a mutli-threaded program has been transformed according to the transformation rules, we can force the program's execution to follow the given sequence of synchronized methods repeatedly and reduce the efforts to find the source of the errors. In addition, we present a method for checking the feasibility of the synchronized method sequence to be replayed.

  • PDF

A Multithreaded Processor Architecture for SDR

  • Glossner, John;Raja, Tanuj;Hokenek, Erdem;Moudgill, Mayan
    • Information and Communications Magazine
    • /
    • v.19 no.11
    • /
    • pp.70-84
    • /
    • 2002
  • In this paper we discuss a multi-threaded baseband Processor capable of executing all physical layer processing of high data rate communications systems completely in software. We discuss the enabling technology for a software defined radio approach and present results for GPRS. 802.11b, and 2Mbps WCDMA. All of these protocols can be executed in real-time on the SB9600 chip using the Sandblaster core.

Real-time control software for flexible manufacturing system (FMS의 실제 시간 제어에 관한 연구)

  • 이석희
    • 제어로봇시스템학회:학술대회논문집
    • /
    • 1986.10a
    • /
    • pp.518-526
    • /
    • 1986
  • This paper gives the detail of the work carried out to develop real-time control software for Flexible Manufacturing Systems. A basic design philosophy to implement such software is proposed. The major features are the partitioning of complicated control actions into simplified ones, structured programming and multi-threaded transaction-based tasks. The software operates on the basis of passing task-to-task messages via mailboxes, causing appropriate actions to be taken by each task. Each task represents a separate subprocess so that the subprocesses can be run simultaneously. The task-to-task message could be easily replaced by computer-to-computer communication, using LAN, demonstrating that the software methods developed produce a flexible designs for control software of an FMS. A method of linking such software to simulation software is suggested as a potentially powerful additional design-tool.

  • PDF

Multi-Threaded Parallel H.264/AVC Decoder for Multi-Core Systems (멀티코어 시스템을 위한 멀티스레드 H.264/AVC 병렬 디코더)

  • Kim, Won-Jin;Cho, Keol;Chung, Ki-Seok
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.47 no.11
    • /
    • pp.43-53
    • /
    • 2010
  • Wide deployment of high resolution video services leads to active studies on high speed video processing. Especially, prevalent employment of multi-core systems accelerates researches on high resolution video processing based on parallelization of multimedia software. In this paper, we propose a novel parallel H.264/AVC decoding scheme on a multi-core platform. Parallel H.264/AVC decoding is challenging not only because parallelization may incur significant synchronization overhead but also because software may have complicated dependencies. To overcome such issues, we propose a novel approach called Multi-Threaded Parallelization(MTP). In MTP, to reduce synchronization overhead, a separate thread is allocated to each stage in the pipeline. In addition, an efficient memory reuse technique is used to reduce the memory requirement. To verify the effectiveness of the proposed approach, we parallelized FFmpeg H.264/AVC decoder with the proposed technique using OpenMP, and carried out experiments on an Intel Quad-Core platform. The proposed design performs better than FFmpeg H.264/AVC decoder before the parallelization by 53%. We also reduced the amount of memory usage by 65% and 81% for a high-definition(HD) and a full high-definition(FHD) video, respectively compared with that of popular existing method called 2Dwave.

Verification for Multithreaded Java Code using Java Memory Model (자바 메모리 모델을 이용한 멀티 스레드 자바 코드 검증)

  • Lee, Min;Kwon, Gi-Hwon
    • The KIPS Transactions:PartD
    • /
    • v.15D no.1
    • /
    • pp.99-106
    • /
    • 2008
  • Recently developed compilers perform some optimizations in order to speed up the execution time of source program. These optimizations require the reordering of the sequence of program statements. This reordering does not give any problems in a single-threaded program. However, the reordering gives some significant errors in a multi-threaded program. State-of-the-art model checkers such as JavaPathfinder do not consider the reordering resulted in the optimization step in a compiler since they just consider a single memory model. In this paper, we develop a new verification tool to verify Java source program based on Java Memory Model. And our tool is capable of handling the reordering in verifying Java programs. As a result, our tool finds an error in the test program which is not revealed with the traditional model checker JavaPathFinder.

Development of Portable Atmospheric Environment Measurement System using Low Power Wireless Communication

  • Chae, Soohyeon;Kim, Hack-Yoon;Gim, Jangwon
    • Journal of Advanced Information Technology and Convergence
    • /
    • v.10 no.1
    • /
    • pp.99-109
    • /
    • 2020
  • As environmental pollution has become severe due to the rapid increase in pollutant generation in the air, measurement, collection, and analysis of atmospheric environment information plays an important role. However, it is difficult to measure the high-resolution and real-time atmospheric environment of the cities and tourist spots with high population mobility only by measuring equipment of stationary measuring stations. Therefore, this paper proposes a portable atmospheric environment measurement system for real-time measurement and monitoring of atmospheric environment information. The proposed system is a portable client with a low-power wireless communication method. It is possible to reliably transmit and receive the measured data through a multi-threaded server to monitor the trend of pollutants in the air in real-time.

A Parallelization Technique with Integrated Multi-Threading for Video Decoding on Multi-core Systems

  • Hong, Jung-Hyun;Kim, Won-Jin;Chung, Ki-Seok
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.7 no.10
    • /
    • pp.2479-2496
    • /
    • 2013
  • Increasing demand for Full High-Definition (FHD) video and Ultra High-Definition (UHD) video services has led to active research on high speed video processing. Widespread deployment of multi-core systems has accelerated studies on high resolution video processing based on parallelization of multimedia software. Even if parallelization of a specific decoding step may improve decoding performance partially, such partial parallelization may not result in sufficient performance improvement. Particularly, entropy decoding has often been considered separately from other decoding steps since the entropy decoding step could not be parallelized easily. In this paper, we propose a parallelization technique called Integrated Multi-Threaded Parallelization (IMTP) which takes parallelization of the entropy decoding step, with other decoding steps, into consideration in an integrated fashion. We used the Simultaneous Multi-Threading (SMT) technique with appropriate thread scheduling techniques to achieve the best performance for the entire decoding step. The speedup of the proposed IMTP method is up to 3.35 times faster with respect to the entire decoding time over a conventional decoding technique for H.264/AVC videos.