• Title/Summary/Keyword: Task Execution Time

Search Result 221, Processing Time 0.023 seconds

Comparative Analysis between Super Loop and FreeRTOS Methods for Arduino Multitasking (아두이노 멀티 태스킹을 위한 수퍼루프 방식과 FreeRTOS 방식의 비교 분석)

  • Gong, Dong-Hwan;Shin, Seung-Jung
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.18 no.6
    • /
    • pp.133-137
    • /
    • 2018
  • Arduino is a small microcomputer that is used in a variety of industry fields and especially is widely used as an open source hardware IoT device. The multi-tasking method of Arduino is divided into super loop timing and RTOS thread method. The super loop timing method is simple and easy to understand. However, when one task is long, it affects the execution of the next task. In addition, RTOS threading has the advantage of being able to run without being influenced by other work time. However, Arduino, a small microcomputer, has a disadvantage in that, when the number of threads increases, the context switching time of the thread causes additional time not included in the super loop timing method have. In this paper, we use Arduino Uno R3 and FreeRTOS to analyze these different features, and the task for the experiment is to send 8000 digital signals to the built-in LED port. If two tasks of the same size are executed, the super loop method executes 3 ms faster than FreeRTOS multitasking. If multiple tasks are executed simultaneously, superloop type task is sequential execution and difference in execution time between first task and last task is large. FreeRTOS method can be executed concurrently, but execution time delay of about 30 ms occurs in context switching time.

Periodic and Real-Time Aperiodic Task Scheduling Algorithm based on Topological Sort and Residual Time (위상 정렬과 여유 시간 기반 주기 및 실시간 비주기 태스크 스케줄링 알고리즘)

  • Kim, Si-Wan;Park, Hong-Seong
    • Journal of Institute of Control, Robotics and Systems
    • /
    • v.18 no.4
    • /
    • pp.302-307
    • /
    • 2012
  • Real-time systems perform periodic tasks and real-time aperiodic tasks such as alarm processing. Especially the periodic tasks included in control systems such as robots have precedence relationships among them. This paper proposes a new scheduling algorithm based on topological sort and residual time. The precedence relationships among periodic tasks are translated to the priorities of the tasks using topological sort algorithm. During the execution of the system the proposed scheduling algorithm decides on whether or not a newly arrived real-time aperiodic task is accepted based on residual time whenever the aperiodic task such as alarm is arrived. The proposed algorithm is validated using examples.

Aggressive Slack Reclamation for Soft Real-Time Task Scheduling (연성 실시간 태스크들의 스케줄링을 위한 적극적인 슬랙 재활용)

  • Kim Yong-Seok
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.43 no.2 s.308
    • /
    • pp.12-20
    • /
    • 2006
  • In scheduling of real-time tasks, the required hardware performance for a given set of tasks is determined based on the worst case execution time. For soft real-time tasks as multimedia applications, a lower performance hardware can service the tasks. Since the execution time of a task can vary in time, we can reclaim the slacks of early completed tasks for those of longer than average execution times. Then, the average ratio of deadline-miss can be lowered. This paper presents an algorithm, Aggressive Slack Reclamation (ASR), that tasks share slacks aggressively. A simulation result shows that ASR enhances the deadline-miss ratio and number of context switches than previous results.

Measuring Method of Worst-case Execution Time by Analyzing Relation between Source Code and Executable Code (소스코드와 실행코드의 상관관계 분석을 통한 최악실행시간 측정 방법)

  • Seo, Yongjin;Kim, Hyeon Soo
    • Journal of Internet Computing and Services
    • /
    • v.17 no.4
    • /
    • pp.51-60
    • /
    • 2016
  • Embedded software has requirements such as real-time and environment independency. The real-time requirement is affected from worst-case execution time of loaded tasks. Therefore, to guarantee real-time requirement, we need to determine a program's worst-case execution time using static analysis approach. However, the existing methods for worst-case execution time analysis do not consider the environment independency. Thus, in this paper, in order to provide environment independency, we propose a method for measuring task's execution time from the source codes. The proposed method measures the execution time through the control flow graph created from the source codes instead of the executable codes. However, the control flow graph created from the source code does not have information about execution time. Therefore, in order to provide this information, the proposed method identifies the relationships between statements in the source code and instructions in the executable code. By parameterizing those parts that are dependent on processors based on the relationships, it is possible to enhance the flexibility of the tool that measures the worst-case execution time.

Design of Scheduler Considering Real-Time Characteristic and Fault-Tolerant in Embedded System (임베디드 시스템에서 실시간성과 결함허용을 보장하는 스케줄러 설계)

  • Jeon, Tae-Gun;Kim, Chang-Soo
    • Journal of Korea Multimedia Society
    • /
    • v.14 no.1
    • /
    • pp.76-84
    • /
    • 2011
  • Embedded Systems need to ensure real-time of the task response time depending on the applied fields of it. And task could be faulty due to various reasons in real time systems. Therefore in this paper, we design a task scheduler that guarantees deadlines of periodic tasks and considers a fault tolerance of defective task in embedded system with a single processor. In order to provide real-time, we classify tasks with periodic/aperiodic tasks and applies RMS(Rate Monotonic Scheduling) method to schedule periodic tasks and can guarantees execution of aperiodic tasks by managing surplus times obtained after analyzing the execution time of periodic tasks. In order to provide fault tolerance, we manage backup times and reexecute a fault task to restore it's conditions.

GPU-Based Acceleration of Quantum-Inspired Evolutionary Algorithm (GPU를 이용한 Quantum-Inspired Evolutionary Algorithm 가속)

  • Ryoo, Ji-Hyun;Park, Han-Min;Choi, Ki-Young
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.49 no.8
    • /
    • pp.1-9
    • /
    • 2012
  • Quantum-Inspired Evolutionary Algorithm(QEA) contains sufficient data-level parallelism to be naturally accelerated on GPUs. For an efficient reduction of execution time, however, careful task-mapping should be done to properly reflect the characteristics of CPU and GPU. Furthermore, when deciding which part of the application should run on GPU, we need to consider the data transfer between CPU and GPU memory spaces as well as the data-level parallelism. In addition, the usage of zero-copy host memory, proper choice of the execution configuration, and thread organization considering memory coalescing is important to further reduce the execution time. With all these techniques, we could run QEA 3.69 times faster on average in comparison with the multi-threading CPU for the case of 0-1 knapsack problem with 30,000 items.

Task Management and Garbage Collection Execution Control Method for Providing Real-time Performance to Android (안드로이드에 실시간 성능 제공을 위한 태스크 관리 및 가비지컬렉션 실행 제어 방법)

  • Cho, Kyung-Yeon;Jo, Han-Moo;Lee, Jeong-Guk;Seo, Min-Won;Lee, Sang-Gil;Lee, Cheol-Hoon
    • The Journal of the Korea Contents Association
    • /
    • v.18 no.3
    • /
    • pp.101-113
    • /
    • 2018
  • Systems such as military inspection equipment which it is important to acquire and evaluate data in real-time should be able to real-time processing at the operating system level. As technology advances, there is a demand for replacing existing equipment with mobile device, but mobile devices with Android are not suitable for systems requiring real-time performance. On Android, garbage collection ensures free memory, while other tasks are interrupted while this task is performed, which cannot guarantee periodicity of particular tasks. In this paper, we designed and implemented a structure to control execution garbage collection of Android to solve this problem. Real-time performance is ensured by controlling garbage collection during the time required for real-time operation, and RTiK(Real-Time implanted Kernel) is applied to ensure real-time performance on Android. In order to evaluate the performance, we measured the call period of the 5ms period task, and, only 34.31% of the task was guaranteed before the control, but the task period of 98.18% was satisfied through control, providing real-time performance to Android.

Energy-Efficient Multi- Core Scheduling for Real-Time Video Processing (실시간 비디오 처리에 적합한 에너지 효율적인 멀티코어 스케쥴링)

  • Paek, Hyung-Goo;Yeo, Jeong-Mo;Lee, Wan-Yeon
    • Journal of the Korea Society of Computer and Information
    • /
    • v.16 no.6
    • /
    • pp.11-20
    • /
    • 2011
  • In this paper, we propose an optimal scheduling scheme that minimizes the energy consumption of a real-time video task on the multi-core platform supporting dynamic voltage and frequency scaling. Exploiting parallel execution on multiple cores for less energy consumption, the propose scheme allocates an appropriate number of cores to the task execution, turns off the power of unused cores, and assigns the lowest clock frequency meeting the deadline. Our experiments show that the proposed scheme saves a significant amount of energy, up to 67% and 89% of energy consumed by two previous methods that execute the task on a single core and on all cores respectively.

A Workflow Scheduling Technique Using Genetic Algorithm in Spot Instance-Based Cloud

  • Jung, Daeyong;Suh, Taeweon;Yu, Heonchang;Gil, JoonMin
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.8 no.9
    • /
    • pp.3126-3145
    • /
    • 2014
  • Cloud computing is a computing paradigm in which users can rent computing resources from service providers according to their requirements. A spot instance in cloud computing helps a user to obtain resources at a lower cost. However, a crucial weakness of spot instances is that the resources can be unreliable anytime due to the fluctuation of instance prices, resulting in increasing the failure time of users' job. In this paper, we propose a Genetic Algorithm (GA)-based workflow scheduling scheme that can find the optimal task size of each instance in a spot instance-based cloud computing environment without increasing users' budgets. Our scheme reduces total task execution time even if an out-of-bid situation occurs in an instance. The simulation results, based on a before-and-after GA comparison, reveal that our scheme achieves performance improvements in terms of reducing the task execution time on average by 7.06%. Additionally, the cost in our scheme is similar to that when GA is not applied. Therefore, our scheme can achieve better performance than the existing scheme, by optimizing the task size allocated to each available instance throughout the evolutionary process of GA.

Refined fixed granularity algorithm on Networks of Workstations (NOW 환경에서 개선된 고정 분할 단위 알고리즘)

  • Gu, Bon-Geun
    • The KIPS Transactions:PartA
    • /
    • v.8A no.2
    • /
    • pp.117-124
    • /
    • 2001
  • At NOW (Networks Of Workstations), the load sharing is very important role for improving the performance. The known load sharing strategy is fixed-granularity, variable-granularity and adaptive-granularity. The variable-granularity algorithm is sensitive to the various parameters. But Send algorithm, which implements the fixed-granularity strategy, is robust to task granularity. And the performance difference between Send and variable-granularity algorithm is not substantial. But, in Send algorithm, the computing time and the communication time are not overlapped. Therefore, long latency time at the network has influence on the execution time of the parallel program. In this paper, we propose the preSend algorithm. In the preSend algorithm, the master node can send the data to the slave nodes in advance without the waiting for partial results from the slaves. As the master node sent the next data to the slaves in advance, the slave nodes can process the data without the idle time. As stated above, the preSend algorithm can overlap the computing time and the communication time. Therefore we reduce the influence of the long latency time at the network and the execution time of the parallel program on the NOW. To compare the execution time of two algorithms, we use the $320{\times}320$ matrix multiplication. The comparison results of execution times show that the preSend algorithm has the shorter execution time than the Send algorithm.

  • PDF