{"title":"Parallel Implementation of the Slope One Algorithm for Collaborative Filtering","authors":"Efthalia Karydi, K. Margaritis","doi":"10.1109/PCi.2012.34","DOIUrl":null,"url":null,"abstract":"Recommender systems are mechanisms that filter information and predict a user's preference to an item. Parallel implementations of recommender systems improve scalability issues and can be applied to internet-based companies having considerable impact on their profits. This paper implements two parallel versions of the collaborative filtering algorithm Slope One, which has advantages such as its efficiency and the ability to update data dynamically. The first presented version is parallely implemented with the use of the OpenMP API and its performance is evaluated on a multi-core system. The second is an hybrid approach using both OpenMP and MPI and its performance is evaluated in an homogeneous and an heterogeneous cluster. Experiments proved that the multithreaded version is 9,5 times faster than the sequential algorithm.","PeriodicalId":131195,"journal":{"name":"2012 16th Panhellenic Conference on Informatics","volume":"75 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-10-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 16th Panhellenic Conference on Informatics","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/PCi.2012.34","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7
Abstract
Recommender systems are mechanisms that filter information and predict a user's preference to an item. Parallel implementations of recommender systems improve scalability issues and can be applied to internet-based companies having considerable impact on their profits. This paper implements two parallel versions of the collaborative filtering algorithm Slope One, which has advantages such as its efficiency and the ability to update data dynamically. The first presented version is parallely implemented with the use of the OpenMP API and its performance is evaluated on a multi-core system. The second is an hybrid approach using both OpenMP and MPI and its performance is evaluated in an homogeneous and an heterogeneous cluster. Experiments proved that the multithreaded version is 9,5 times faster than the sequential algorithm.