• Title/Summary/Keyword: Memory allocation

Search Result 206, Processing Time 0.023 seconds

Buffer Cache Management for Low Power Consumption (저전력을 위한 버퍼 캐쉬 관리 기법)

  • Lee, Min;Seo, Eui-Seong;Lee, Joon-Won
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.35 no.6
    • /
    • pp.293-303
    • /
    • 2008
  • As the computing environment moves to the wireless and handheld system, the power efficiency is getting more important. That is the case especially in the embedded hand-held system and the power consumed by the memory system takes the second largest portion in overall. To save energy consumed in the memory system we can utilize low power mode of SDRAM. In the case of RDRAM, nap mode consumes less than 5% of the power consumed in active or standby mode. However hardware controller itself can't use this facility efficiently unless the operating system cooperates. In this paper we focus on how to minimize the number of active units of SDRAM. The operating system allocates its physical pages so that only a few units of SDRAM need to be activated and the unnecessary SDRAM can be put into nap mode. This work can be considered as a generalized and system-wide version of PAVM(Power-Aware Virtual Memory) research. We take all the physical memory into account, especially buffer cache, which takes an half of total memory usage on average. Because of the portion of buffer cache and its importance, PAVM approach cannot be robust without taking the buffer cache into account. In this paper, we analyze the RAM usage and propose power-aware page allocation policy. Especially the pages mapped into the process' address space and the buffer cache pages are considered. The relationship and interactions of these two kinds of pages are analyzed and exploited for energy saving.

Parallel Multithreaded Processing for Data Set Summarization on Multicore CPUs

  • Ordonez, Carlos;Navas, Mario;Garcia-Alvarado, Carlos
    • Journal of Computing Science and Engineering
    • /
    • v.5 no.2
    • /
    • pp.111-120
    • /
    • 2011
  • Data mining algorithms should exploit new hardware technologies to accelerate computations. Such goal is difficult to achieve in database management system (DBMS) due to its complex internal subsystems and because data mining numeric computations of large data sets are difficult to optimize. This paper explores taking advantage of existing multithreaded capabilities of multicore CPUs as well as caching in RAM memory to efficiently compute summaries of a large data set, a fundamental data mining problem. We introduce parallel algorithms working on multiple threads, which overcome the row aggregation processing bottleneck of accessing secondary storage, while maintaining linear time complexity with respect to data set size. Our proposal is based on a combination of table scans and parallel multithreaded processing among multiple cores in the CPU. We introduce several database-style and hardware-level optimizations: caching row blocks of the input table, managing available RAM memory, interleaving I/O and CPU processing, as well as tuning the number of working threads. We experimentally benchmark our algorithms with large data sets on a DBMS running on a computer with a multicore CPU. We show that our algorithms outperform existing DBMS mechanisms in computing aggregations of multidimensional data summaries, especially as dimensionality grows. Furthermore, we show that local memory allocation (RAM block size) does not have a significant impact when the thread management algorithm distributes the workload among a fixed number of threads. Our proposal is unique in the sense that we do not modify or require access to the DBMS source code, but instead, we extend the DBMS with analytic functionality by developing User-Defined Functions.

A Block Allocation Policy to Enhance Wear-leveling in a Flash File System (플래시 파일시스템에서 wear-leveling 개선을 위한 블록 할당 정책)

  • Jang, Si-Woong
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2007.10a
    • /
    • pp.574-577
    • /
    • 2007
  • While disk can be overwritten on updating data, because flash memory can not be overwritten on updating data, new data are updated in new area. If data are frequently updated, garbage collection, which is achieved by erasing blocks, should be performed to reclaim new area. Hence, because the number of erase operations is limited due to characteristics of flash memory, every block should be evenly written and erased. However, if data with access locality are processed by cost benefit algorithm with separation of hot block and cold block, though the performance of processing is high, wear-leveling is not even. In this paper, we propose CB-MB (Cost Benefit between Multi Bank) algorithm in which hot data are allocated in one bank and cold data in another bank, and in which role of hot bank and cold bank is exchanged every period. CB-MB showed that its performance was similar to that of others for uniform workload, however, the method provides much better performance than that of others for workload of access locality.

  • PDF

A Study on Effective Education of Programming Language (효과적인 프로그래밍언어 교육에 대한 연구)

  • Cho, Jae-Soo
    • The Journal of Korean Institute for Practical Engineering Education
    • /
    • v.2 no.2
    • /
    • pp.30-35
    • /
    • 2010
  • This paper proposes several methods for effective teaching of programing language(especially C). The programing languages are very important and basic subjects in the Department of Computer Engineering and Science. Many students have some difficulty in learning the programming languages. So, we will suggest several effective methods for effective teaching of programming languages. First, in order to understand the programming language effectively, we need to teach some basic computer architecture and operation principles of computer program to students. Second, it is better to teach many example-based programing skills instead of conventional grammar teaching. Third, if we teach the memory status(memory allocation/release) during the program operation, it will be much better to understand the pointer variables and memory problems. Fourth, let's improve the programming skills through effective homework assignments and experiments. Fifth, let students be guided so that they do programing by themselves. Finally, we can maximize the programming skill through the final termproject.

  • PDF

A File Clustering Algorithm for Wear-leveling (마모도 평준화를 위한 File Clustering 알고리즘)

  • Lee, Taehwa;Cha, Jaehyuk
    • Journal of Digital Contents Society
    • /
    • v.14 no.1
    • /
    • pp.51-57
    • /
    • 2013
  • Storage device based on Flash Memory have many attractive features such as high performance, low power consumption, shock resistance, and low weight, so they replace HDDs to a certain extent. An Storage device based on Flash Memory has FTL(Flash Translation Layer) which emulate block storage devices like HDDs. A garbage collection, one of major functions of FTL, effects highly on the performance and the lifetime of devices. However, there is no de facto standard for new garbage collection algorithms. To solve this problem, we propose File Clustering Algorithm. File Clustering Algorithm respect to update page from same file at the same time. So, these are clustered to same block. For this mechanism, We propose Page Allocation Policy in FTL and use MIN-MAX GAP to guarantee wear leveling. To verify the algorithm in this paper, we use TPC Benchmark. So, The performance evaluation reveals that the proposed algorithm has comparable result with the existing algorithms(No wear leveling, Hot/Cold) and shows approximately 690% improvement in terms of the wear leveling.

A Study on Risk Parity Asset Allocation Model with XGBoos (XGBoost를 활용한 리스크패리티 자산배분 모형에 관한 연구)

  • Kim, Younghoon;Choi, HeungSik;Kim, SunWoong
    • Journal of Intelligence and Information Systems
    • /
    • v.26 no.1
    • /
    • pp.135-149
    • /
    • 2020
  • Artificial intelligences are changing world. Financial market is also not an exception. Robo-Advisor is actively being developed, making up the weakness of traditional asset allocation methods and replacing the parts that are difficult for the traditional methods. It makes automated investment decisions with artificial intelligence algorithms and is used with various asset allocation models such as mean-variance model, Black-Litterman model and risk parity model. Risk parity model is a typical risk-based asset allocation model which is focused on the volatility of assets. It avoids investment risk structurally. So it has stability in the management of large size fund and it has been widely used in financial field. XGBoost model is a parallel tree-boosting method. It is an optimized gradient boosting model designed to be highly efficient and flexible. It not only makes billions of examples in limited memory environments but is also very fast to learn compared to traditional boosting methods. It is frequently used in various fields of data analysis and has a lot of advantages. So in this study, we propose a new asset allocation model that combines risk parity model and XGBoost machine learning model. This model uses XGBoost to predict the risk of assets and applies the predictive risk to the process of covariance estimation. There are estimated errors between the estimation period and the actual investment period because the optimized asset allocation model estimates the proportion of investments based on historical data. these estimated errors adversely affect the optimized portfolio performance. This study aims to improve the stability and portfolio performance of the model by predicting the volatility of the next investment period and reducing estimated errors of optimized asset allocation model. As a result, it narrows the gap between theory and practice and proposes a more advanced asset allocation model. In this study, we used the Korean stock market price data for a total of 17 years from 2003 to 2019 for the empirical test of the suggested model. The data sets are specifically composed of energy, finance, IT, industrial, material, telecommunication, utility, consumer, health care and staple sectors. We accumulated the value of prediction using moving-window method by 1,000 in-sample and 20 out-of-sample, so we produced a total of 154 rebalancing back-testing results. We analyzed portfolio performance in terms of cumulative rate of return and got a lot of sample data because of long period results. Comparing with traditional risk parity model, this experiment recorded improvements in both cumulative yield and reduction of estimated errors. The total cumulative return is 45.748%, about 5% higher than that of risk parity model and also the estimated errors are reduced in 9 out of 10 industry sectors. The reduction of estimated errors increases stability of the model and makes it easy to apply in practical investment. The results of the experiment showed improvement of portfolio performance by reducing the estimated errors of the optimized asset allocation model. Many financial models and asset allocation models are limited in practical investment because of the most fundamental question of whether the past characteristics of assets will continue into the future in the changing financial market. However, this study not only takes advantage of traditional asset allocation models, but also supplements the limitations of traditional methods and increases stability by predicting the risks of assets with the latest algorithm. There are various studies on parametric estimation methods to reduce the estimated errors in the portfolio optimization. We also suggested a new method to reduce estimated errors in optimized asset allocation model using machine learning. So this study is meaningful in that it proposes an advanced artificial intelligence asset allocation model for the fast-developing financial markets.

An Efficient Packetization Method for the Real-time Internet Video Transmission (실시간 인터넷 동영상 전송을 위한 효율적인 패킷화 기법)

  • Kim Hyo-Hyun;Yoo Kook-Yeol
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.31 no.6C
    • /
    • pp.614-622
    • /
    • 2006
  • In this paper, we propose an efficient packetization method to reduce the packetization overhead. For the purpose, we firstly verify the relationship between packet length and packet loss rate. The empirical results show that as the packet length is larger than the path MTU, the packet loss rate is drastically increased, producing poor visual quality at the receiver side. However, as the length of the packet is reduced, we should transmit more packets per frame and the packetization overhead will be increased. This increase in the packetization overhead reduces the number of bits allocated to the video data, resulting in the low visual quality. Therefore, each packet should be packetized to have the packet length close to the path MTU. In this paper, we show that the this process of the packetization with the constraint on the packet length is very similar to the dynamic storage allocation in the operating system. We had thoroughly surveyed the dynamic storage allocation methods used in the recent operating systems and propose to use the allocation methods for the video packetization. We empirically show that the proposed method can reduce the packetization overhead upto 28.3%, compared with the conventional sequential packetization method which have been widely used in Internet video transmission.

A Genetic Algorithm Approach to the Fire Sequencing Problem

  • Kwon, O-Jeong
    • Journal of the military operations research society of Korea
    • /
    • v.29 no.2
    • /
    • pp.61-80
    • /
    • 2003
  • A fire sequencing problem is considered. Fire sequencing problem is a kind of scheduling problem that seeks to minimize the overall time span under a result of weapon­target allocation problem. The assigned weapons should impact a target simultaneously and a weapon cannot transfer the firing against another target before all planned rounds are consumed. The computational complexity of the fire sequencing problem is strongly NP­complete even if the number of weapons is two, so it is difficult to get the optimal solution in a reasonable time by the mathematical programming approach. Therefore, a genetic algorithm is adopted as a solution method, in which the representation of the solution, crossover and mutation strategies are applied on a specific condition. Computational results using randomly generated data are presented. We compared the solutions given by CPLEX and the genetic algorithm. Above $7(weapon){\times}15(target)$ size problems, CPLEX could not solve the problem even if we take enough time to solve the problem since the required memory size increases dramatically as the number of nodes expands. On the other hand, genetic algorithm approach solves all experimental problems very quickly and gives good solution quality.

A Morphological Analyzer with Multi-Threads Method (다중 스레드 방식을 도입한 형태소 해석기)

  • 최유경;안동언;정성종;이신원;두길수;노영만;오형진;김금영;이동광
    • Proceedings of the IEEK Conference
    • /
    • 2001.06c
    • /
    • pp.181-184
    • /
    • 2001
  • In recent, a morphological analyzer be used for indexing system in information retrieval system. A morphological analyzer as a indexing system must have multiprocessing ability to deal with multiple users and documents. To meet the needs of these, we propose a morphological analyzer with multi-threads method. To use multi-threads method, we consider memory allocation problem, threads synchronization problem, code optimization and so on. In this paper, first, we report several manners for multi-threads. And next, to evaluate our proposed system, we make a comparison test between proposed system and existing system.

  • PDF

Maximal Parallelism in Local Microprogram (Local Microprogram의 병렬 수행의 최대화)

  • 조영일;임인칠
    • Journal of the Korean Institute of Telematics and Electronics
    • /
    • v.21 no.3
    • /
    • pp.13-18
    • /
    • 1984
  • This paper suggests an algorithm which can perform microoperations (MO'S) in parauel by considering concurrency of MO'S and resource allocation in horizontal microprogams. The algorithm can be obtained the result which reduces execution time and the space of control memory in microprogrammed digital systems by minimizing the total number of microinctructions by combining MO'5, which can be performed in paiallel by assigning a weight to each MO in the SLM (straight line microprogram), into a microinstruction.

  • PDF