Performance of Parallel K-Means Algorithms in Java']Java

被引:6
|
作者
Nigro, Libero [1 ]
机构
[1] Univ Calabria, Engn Dept Informat Modelling Elect & Syst Sci DIM, I-87036 Arcavacata Di Rende, Italy
关键词
parallel algorithms; multi-core machines; K-means clustering; !text type='Java']Java[!/text; functional parallel streams; actors; message-passing; lightweight parallel programming;
D O I
10.3390/a15040117
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
K-means is a well-known clustering algorithm often used for its simplicity and potential efficiency. Its properties and limitations have been investigated by many works reported in the literature. K-means, though, suffers from computational problems when dealing with large datasets with many dimensions and great number of clusters. Therefore, many authors have proposed and experimented different techniques for the parallel execution of K-means. This paper describes a novel approach to parallel K-means which, today, is based on commodity multicore machines with shared memory. Two reference implementations in Java are developed and their performances are compared. The first one is structured according to a map/reduce schema that leverages the built-in multi-threaded concurrency automatically provided by Java to parallel streams. The second one, allocated on the available cores, exploits the parallel programming model of the Theatre actor system, which is control-based, totally lock-free, and purposely relies on threads as coarse-grain "programming-in-the-large" units. The experimental results confirm that some good execution performance can be achieved through the implicit and intuitive use of Java concurrency in parallel streams. However, better execution performance can be guaranteed by the modular Theatre implementation which proves more adequate for an exploitation of the computational resources.
引用
收藏
页数:15
相关论文
共 50 条
  • [31] Massively parallel computing in Java']Java
    Getov, V
    Flynn-Hummel, S
    Mintchev, S
    Ngo, T
    [J]. THIRD WORKING CONFERENCE ON MASSIVELY PARALLEL PROGRAMMING MODELS, PROCEEDINGS, 1998, : 112 - 117
  • [32] Visper:: Parallel computing and Java']Java
    Stankovic, N
    Zhang, K
    Kranzlmüller, D
    [J]. INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS I-IV, PROCEEDINGS, 1998, : 349 - 354
  • [33] Enhancement of Parallel K-Means Algorithm
    Mathew, Juby
    Vijayakumar, R.
    [J]. 2015 INTERNATIONAL CONFERENCE ON INNOVATIONS IN INFORMATION, EMBEDDED AND COMMUNICATION SYSTEMS (ICIIECS), 2015,
  • [34] Two improved k-means algorithms
    Yu, Shyr-Shen
    Chu, Shao-Wei
    Wang, Chuin-Mu
    Chan, Yung-Kuan
    Chang, Ting-Cheng
    [J]. APPLIED SOFT COMPUTING, 2018, 68 : 747 - 755
  • [35] Adapting k-means Algorithms for Outliers
    Grunau, Christoph
    Rozhon, Vaclav
    [J]. INTERNATIONAL CONFERENCE ON MACHINE LEARNING, VOL 162, 2022,
  • [36] Parallel and distributed computing with Java']Java
    Baker, Mark A.
    Grove, Matthew
    Shafi, Aamir
    [J]. ISPDC 2006: FIFTH INTERNATIONAL SYMPOSIUM ON PARALLEL AND DISTRIBUTED COMPUTING, PROCEEDINGS, 2006, : 3 - +
  • [37] Java']Java and network parallel processing
    Stankovic, N
    Zhang, K
    [J]. RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, 1998, 1497 : 239 - 246
  • [38] The study of parallel K-Means algorithm
    Zhang, Yufang
    Xiong, Zhongyang
    Mao, Jiali
    Ou, Ling
    [J]. WCICA 2006: SIXTH WORLD CONGRESS ON INTELLIGENT CONTROL AND AUTOMATION, VOLS 1-12, CONFERENCE PROCEEDINGS, 2006, : 5868 - +
  • [39] Optimizing Parallel Java']Java Streams
    Basso, Matteo
    Schiavio, Filippo
    Rosa, Andrea
    Binder, Walter
    [J]. 2022 26TH INTERNATIONAL CONFERENCE ON ENGINEERING OF COMPLEX COMPUTER SYSTEMS (ICECCS 2022), 2022, : 23 - 32
  • [40] A framework for parallel programming in Java']Java
    Launay, P
    Pazat, JL
    [J]. HIGH-PERFORMANCE COMPUTING AND NETWORKING, 1998, 1401 : 628 - 637