• Title/Summary/Keyword: Software runtime characteristics

Search Result 10, Processing Time 0.03 seconds

Improving application startup time by automatic profiling (Automatic Usage Profiling을 통한 초기 앱 실행 속도 개선 방법)

  • Chae, Hyangseok;Baik, Jongmoon
    • Journal of Software Engineering Society
    • /
    • v.28 no.1
    • /
    • pp.1-6
    • /
    • 2019
  • Google released an initial version of Android that runs Dex(Dalvik Executable) through the Dalvik Runtime. Since Dalvik Runtime is based on interpreter, JIT(Just-in-time) compilation has been applied to improve performance. After Lollipop(Android 5.0) Dalvik Runtime has replaced with ART Runtime which support AOT (Ahead-of-time) compilation of Dex into Native Code. The late st Android has a problem that the application execution speed is slow until the AOT compilation is completed according to the actual usage record after the installation of the app. To improve the problem we have investigate the characteristics of profile that can improve the execution speed of the application and generate the profile automatically. Finally we propose a method that can optimize the application at install time. With the proposed method we can optimize selectively at install time and can help improving the execution speed of the app from the initial execution.

Safety Assessment of Train Control System Software (열차제어시스템 소프트웨어 안전성 평가기법)

  • Han, Jae-Joong;Cho, Byung-Tae;Hwang, Jong-Gyu;Jo, Hyun-Jeong;Kim, Hyung-Shin
    • Proceedings of the KSR Conference
    • /
    • 2007.05a
    • /
    • pp.272-279
    • /
    • 2007
  • Recently, train control system is adopting computer system replacing mechanical system and its software is taking more responsibility than ever. Train control system software is a safety-critical embedded software with realtime and high reliability requirements. In this paper, we propose a safety assessment method for the train control system software. We review characteristics of train control system software and analyze related international software safety standards to derive requirements for safety assessment. Testing tools used for embedded software are surveyed to find a feasible safety assessment architecture. The proposed safety assessment method is to use safety activity results generated during development processes and feed them to the runtime embedded software testing tool.

  • PDF

Simulation and Design of ACRDCL Inverter Using SPICE (SPICE를 이용한 ACRDCL 인버터의 시뮬레이션 및 설계)

  • Han, Soo-Bin;Jung, Bong-Man;Kim, Gyu-Duck;Choi, Soo-Hyun
    • Proceedings of the KIEE Conference
    • /
    • 1994.07a
    • /
    • pp.435-437
    • /
    • 1994
  • Cramped resonant DC link inverter is analyzed by widely available software such as SPICE. In this paper, the model of ACRDCL which is based on converter switch function rather than actual circuit configuration is used. Power circuit is modeled by functional transfer function and the controller is based on the macro-model. Computer memory and runtime are based reduced compared to micro-model. Overall performance including control strategy and harmonic characteristics in the steady state can be analyzed easily.

  • PDF

A Java Birthmark based on Control Flow Graph Matching (제어 흐름 그래프 매칭 기반 자바 버스마크)

  • Park, Hee-Wan;Lim, Hyun-Il;Choi, Seok-Woo;Han, Tai-Sook
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.15 no.11
    • /
    • pp.871-875
    • /
    • 2009
  • A software birthmark is inherent characteristics that can be used to identify a program. In this paper, we propose a new Java birthmark based on control flow graph (CFG) matching. The CFG matching consists of node matching and edge matching. To get similarities of nodes and edges of two CFGs, we apply a sequence alignment algorithm and a shortest path algorithm, respectively. To evaluate the proposed birthmark, we perform experiments on Java programs that implement various algorithms. In the experiments, the proposed birthmark shows not only high credibility and resilience but also fast runtime performance.

Trends of Compiler Development for AI Processor (인공지능 프로세서 컴파일러 개발 동향)

  • Kim, J.K.;Kim, H.J.;Cho, Y.C.P.;Kim, H.M.;Lyuh, C.G.;Han, J.;Kwon, Y.
    • Electronics and Telecommunications Trends
    • /
    • v.36 no.2
    • /
    • pp.32-42
    • /
    • 2021
  • The rapid growth of deep-learning applications has invoked the R&D of artificial intelligence (AI) processors. A dedicated software framework such as a compiler and runtime APIs is required to achieve maximum processor performance. There are various compilers and frameworks for AI training and inference. In this study, we present the features and characteristics of AI compilers, training frameworks, and inference engines. In addition, we focus on the internals of compiler frameworks, which are based on either basic linear algebra subprograms or intermediate representation. For an in-depth insight, we present the compiler infrastructure, internal components, and operation flow of ETRI's "AI-Ware." The software framework's significant role is evidenced from the optimized neural processing unit code produced by the compiler after various optimization passes, such as scheduling, architecture-considering optimization, schedule selection, and power optimization. We conclude the study with thoughts about the future of state-of-the-art AI compilers.

Experimental Performance Comparison of Dynamic Data Race Detection Techniques

  • Yu, Misun;Park, Seung-Min;Chun, Ingeol;Bae, Doo-Hwan
    • ETRI Journal
    • /
    • v.39 no.1
    • /
    • pp.124-134
    • /
    • 2017
  • Data races are one of the most difficult types of bugs in concurrent multithreaded systems. It requires significant time and cost to accurately detect bugs in complex large-scale programs. Although many race detection techniques have been proposed by various researchers, none of them are effective in all aspects. In this paper, we compare the performance of five recent dynamic race detection techniques: FastTrack, Acculock, Multilock-HB, SimpleLock+, and causally precedes (CP) detection. We experimentally demonstrate the strengths and weaknesses of these dynamic race detection techniques in terms of their detection capability, running time, and runtime overhead using 20 benchmark programs with different characteristics. The comparison results show that the detection capability of CP detection does not differ from that of FastTrack, and that SimpleLock+ generates the lowest overhead among the hybrid detection techniques (Acculock, SimpleLock+, and Multilock-HB) for all benchmark programs. SimpleLock+ is 1.2 times slower than FastTrack on average, but misses one true data race reported from Mutilock-HB on the large-scale benchmark programs.

Dynamic storage management for mobile platform based on the characteristics of mobile applications (응용프로그램 특성을 고려한 모바일 플랫폼의 동적 메모리 관리기법)

  • You, Yong-Duck;Park, Sang-Hyun;Choi, Hoon
    • The KIPS Transactions:PartA
    • /
    • v.13A no.7 s.104
    • /
    • pp.561-572
    • /
    • 2006
  • Performance of the mobile devices greatly depends on the efficient resource management because they are usually resource-restricted. In particular, the dynamic storage allocation algorithms very important part of the mobile device's operating system and OS-like software platform. The existing dynamic storage allocation algorithms did not consider application's execution style and the type, life-time, and characteristics of memory objects that the application uses. Those algorithms, as a result, could not manage memory efficiently Therefore, this Paper analyzes the mobile application's execution characteristics and proposes anew dynamic storage allocation algorithm which saves the memory space and improves mobile application's execution speed. The test result shows that the proposed algorithm works 6.5 times faster than the linked-list algorithm[11], 2.5 times faster better than the Doug. Lea's algorithm[12] and 10.5 times faster than the Brent algorithm[14].

A Scalable and Modular Approach to Understanding of Real-time Software: An Architecture-based Software Understanding(ARSU) and the Software Re/reverse-engineering Environment(SRE) (실시간 소프트웨어의 조절적${\cdot}$단위적 이해 방법 : ARSU(Architecture-based Software Understanding)와 SRE(Software Re/reverse-engineering Environment))

  • Lee, Moon-Kun
    • The Transactions of the Korea Information Processing Society
    • /
    • v.4 no.12
    • /
    • pp.3159-3174
    • /
    • 1997
  • This paper reports a research to develop a methodology and a tool for understanding of very large and complex real-time software. The methodology and the tool mostly developed by the author are called the Architecture-based Real-time Software Understanding (ARSU) and the Software Re/reverse-engineering Environment (SRE) respectively. Due to size and complexity, it is commonly very hard to understand the software during reengineering process. However the research facilitates scalable re/reverse-engineering of such real-time software based on the architecture of the software in three-dimensional perspectives: structural, functional, and behavioral views. Firstly, the structural view reveals the overall architecture, specification (outline), and the algorithm (detail) views of the software, based on hierarchically organized parent-chi1d relationship. The basic building block of the architecture is a software Unit (SWU), generated by user-defined criteria. The architecture facilitates navigation of the software in top-down or bottom-up way. It captures the specification and algorithm views at different levels of abstraction. It also shows the functional and the behavioral information at these levels. Secondly, the functional view includes graphs of data/control flow, input/output, definition/use, variable/reference, etc. Each feature of the view contains different kind of functionality of the software. Thirdly, the behavioral view includes state diagrams, interleaved event lists, etc. This view shows the dynamic properties or the software at runtime. Beside these views, there are a number of other documents: capabilities, interfaces, comments, code, etc. One of the most powerful characteristics of this approach is the capability of abstracting and exploding these dimensional information in the architecture through navigation. These capabilities establish the foundation for scalable and modular understanding of the software. This approach allows engineers to extract reusable components from the software during reengineering process.

  • PDF

An Event-Driven Dynamic Monitor for Efficient Service Monitoring (효율적인 서비스 모니터링을 위한 이벤트 주도 동적 모니터)

  • Kum, Deuk-Kyu;Kim, Soo-Dong
    • Journal of KIISE:Software and Applications
    • /
    • v.37 no.12
    • /
    • pp.892-908
    • /
    • 2010
  • Services in SOA are typically perceived as black-box to service consumers, and can be dynamically evolved at runtime, and run on a number of unknown and heterogeneous environments. Because of these characteristics of the services, effective and efficient monitoring of various aspects on services is an essential functionality for autonomous management of service. But the problem with or limitation in conventional or existing approaches is, that they focus on services themselves, ignoring the effects by business processes. Consequently, there is a room for service monitoring which provides more useful information of business level by acquisition of only external monitoring data that depend on specific BPEL engine and middleware. Moreover, there is a strong demand to present effective methods to reduce monitoring overhead which can degrade quality of services. EDA can cope with such limitations in SOA by collecting and analyzing events efficiently. In this paper, we first describe EDA benefits in service monitoring, and classify monitorring target, and present an appropriate monitoring method for each monitoring target. Also to provide the applicability of our approach, an event meta-model is defined, and event processing model and architecture based on the meta-model are proposed. And, with the proposed architecture and method, we implement a prototype of an event-driven dynamic monitoring framework which can collect and process internal and external data at runtime. Finally, we present the result of a case study to demonstrate the effectiveness and applicability of the proposed approach.