A library-based performance tool for multicore pervasive servers

Sayaka Akioka, Yuki Ohno, Midori Sugaya, Tatsuo Nakajima

Research output: Contribution to journalArticle

Abstract

This paper proposes SPLiT (Scalable Performance Library Tool) as the methodology to improve performance of applications on multicore processors through CPU and cache optimizations on the fly. SPLiT is designed to relieve the difficulty of the performance optimization of parallel applications on multicore processors. Therefore, all programmers have to do to benefit from SPLiT is to add a few library calls to let SPLiT know which part of the application should be analyzed. This simple but compelling optimization library contributes to enrich pervasive servers on a multicore processor, which is a strong candidate for an architecture of information appliances in the near future. SPLiT analyzes and predicts application behaviors based on CPU cycle counts and cache misses. According to the analysis and predictions, SPLiT tries to allocate processes and threads sharing data onto the same physical cores in order to enhance cache efficiency. SPLiT also tries to separate cache effective codes from the codes with more cache misses for the purpose of the avoidance of cache pollutions, which result in performance degradation. Empirical experiments assuming web applications validated the efficiency of SPLiT and the performance of the web application is improved by 26%.

Original languageEnglish
Pages (from-to)421-429
Number of pages9
JournalJournal of Information Processing
Volume19
DOIs
Publication statusPublished - 2011
Externally publishedYes

Fingerprint

Servers
Program processors
Pollution
Degradation

ASJC Scopus subject areas

  • Computer Science(all)

Cite this

A library-based performance tool for multicore pervasive servers. / Akioka, Sayaka; Ohno, Yuki; Sugaya, Midori; Nakajima, Tatsuo.

In: Journal of Information Processing, Vol. 19, 2011, p. 421-429.

Research output: Contribution to journalArticle

Akioka, Sayaka ; Ohno, Yuki ; Sugaya, Midori ; Nakajima, Tatsuo. / A library-based performance tool for multicore pervasive servers. In: Journal of Information Processing. 2011 ; Vol. 19. pp. 421-429.
@article{f4f4ac21a1d342ae843d52957c972c81,
title = "A library-based performance tool for multicore pervasive servers",
abstract = "This paper proposes SPLiT (Scalable Performance Library Tool) as the methodology to improve performance of applications on multicore processors through CPU and cache optimizations on the fly. SPLiT is designed to relieve the difficulty of the performance optimization of parallel applications on multicore processors. Therefore, all programmers have to do to benefit from SPLiT is to add a few library calls to let SPLiT know which part of the application should be analyzed. This simple but compelling optimization library contributes to enrich pervasive servers on a multicore processor, which is a strong candidate for an architecture of information appliances in the near future. SPLiT analyzes and predicts application behaviors based on CPU cycle counts and cache misses. According to the analysis and predictions, SPLiT tries to allocate processes and threads sharing data onto the same physical cores in order to enhance cache efficiency. SPLiT also tries to separate cache effective codes from the codes with more cache misses for the purpose of the avoidance of cache pollutions, which result in performance degradation. Empirical experiments assuming web applications validated the efficiency of SPLiT and the performance of the web application is improved by 26{\%}.",
author = "Sayaka Akioka and Yuki Ohno and Midori Sugaya and Tatsuo Nakajima",
year = "2011",
doi = "10.2197/ipsjjip.19.421",
language = "English",
volume = "19",
pages = "421--429",
journal = "Journal of Information Processing",
issn = "0387-5806",
publisher = "Information Processing Society of Japan",

}

TY - JOUR

T1 - A library-based performance tool for multicore pervasive servers

AU - Akioka, Sayaka

AU - Ohno, Yuki

AU - Sugaya, Midori

AU - Nakajima, Tatsuo

PY - 2011

Y1 - 2011

N2 - This paper proposes SPLiT (Scalable Performance Library Tool) as the methodology to improve performance of applications on multicore processors through CPU and cache optimizations on the fly. SPLiT is designed to relieve the difficulty of the performance optimization of parallel applications on multicore processors. Therefore, all programmers have to do to benefit from SPLiT is to add a few library calls to let SPLiT know which part of the application should be analyzed. This simple but compelling optimization library contributes to enrich pervasive servers on a multicore processor, which is a strong candidate for an architecture of information appliances in the near future. SPLiT analyzes and predicts application behaviors based on CPU cycle counts and cache misses. According to the analysis and predictions, SPLiT tries to allocate processes and threads sharing data onto the same physical cores in order to enhance cache efficiency. SPLiT also tries to separate cache effective codes from the codes with more cache misses for the purpose of the avoidance of cache pollutions, which result in performance degradation. Empirical experiments assuming web applications validated the efficiency of SPLiT and the performance of the web application is improved by 26%.

AB - This paper proposes SPLiT (Scalable Performance Library Tool) as the methodology to improve performance of applications on multicore processors through CPU and cache optimizations on the fly. SPLiT is designed to relieve the difficulty of the performance optimization of parallel applications on multicore processors. Therefore, all programmers have to do to benefit from SPLiT is to add a few library calls to let SPLiT know which part of the application should be analyzed. This simple but compelling optimization library contributes to enrich pervasive servers on a multicore processor, which is a strong candidate for an architecture of information appliances in the near future. SPLiT analyzes and predicts application behaviors based on CPU cycle counts and cache misses. According to the analysis and predictions, SPLiT tries to allocate processes and threads sharing data onto the same physical cores in order to enhance cache efficiency. SPLiT also tries to separate cache effective codes from the codes with more cache misses for the purpose of the avoidance of cache pollutions, which result in performance degradation. Empirical experiments assuming web applications validated the efficiency of SPLiT and the performance of the web application is improved by 26%.

UR - http://www.scopus.com/inward/record.url?scp=84941267944&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84941267944&partnerID=8YFLogxK

U2 - 10.2197/ipsjjip.19.421

DO - 10.2197/ipsjjip.19.421

M3 - Article

VL - 19

SP - 421

EP - 429

JO - Journal of Information Processing

JF - Journal of Information Processing

SN - 0387-5806

ER -