skip to main content
10.1145/2597917.2597935acmconferencesArticle/Chapter ViewAbstractPublication PagescfConference Proceedingsconference-collections
research-article

Cache-conscious graph collaborative filtering on multi-socket multicore systems

Published: 20 May 2014 Publication History

Abstract

Recommendation systems using graph collaborative filtering often require responses in real time and high throughput. Therefore, besides recommendation accuracy, it is critical to study high performance concurrent collaborative filtering on modern platforms. To achieve high performance, we study the graph data locality characteristics of collaborative filtering. Our experiments demonstrate that although an individual graph traversal exhibits poor data locality, multiple queries have a tendency of sharing their data footprints, especially in the case of queries with neighboring root vertices. Such characteristics lead to both inter- and intra-thread data locality, which can be utilized to significantly improve collaborative filtering performance.
Based on these observations, we present a cache-conscious system for collaborative filtering on modern multi-socket multicore platforms. In this system, we propose a cache-conscious query scheduling technique and an in-memory graph representation, and to maximize cache performance and minimize cross-core/socket communication overhead, we address both inter- and intra-thread data locality. To address the workload balancing issue, this study introduces a dynamic work-stealing mechanism to explore the tradeoff between workload balancing and cache-consciousness.
The proposed system was evaluated on a Power7+ system against the IBM Knowledge Repository graph dataset. The results demonstrated both good scalability and throughput. Compared with the basic system that does not perform cache-conscious scheduling, inter-thread scheduling improves throughput by up to 18%. Intra-thread scheduling can further improve throughput by as much as 22%. By enabling dynamic work-stealing, the proposed technique balances workloads across all threads with a low standard deviation of the per-thread processing time.

References

[1]
G. Linden, B. Smith, and J. York, "Amazon.com recommendations: item-to-item collaborative filtering," Internet Computing, IEEE, vol. 7, no. 1, pp. 76--80, 2003.
[2]
D. Goldberg, D. Nichols, B. M. Oki, and D. Terry, "Using collaborative filtering to weave an information tapestry," Commun. ACM, vol. 35, no. 12, pp. 61--70, Dec. 1992.
[3]
U. Shardanand and P. Maes, "Social information filtering: algorithms for automating word of mouth," in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, ser. CHI '95. New York, NY, USA: ACM Press/Addison-Wesley Publishing Co., 1995, pp. 210--217.
[4]
W. Hill, L. Stead, M. Rosenstein, and G. Furnas, "Recommending and evaluating choices in a virtual community of use," in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, ser. CHI '95. New York, NY, USA: ACM Press/Addison-Wesley Publishing Co., 1995, pp. 194--201.
[5]
L. Arge, M. A. Bender, E. D. Demaine, B. Holland-Minkley, and J. I. Munro, "Cache-oblivious priority queue and graph algorithm applications," in Proceedings of the Thiry-fourth Annual ACM Symposium on Theory of Computing, ser. STOC '02. New York, NY, USA: ACM, 2002, pp. 268--276.
[6]
R. E. Ladner, J. D. Fix, and A. LaMarca, "Cache performance analysis of traversals and random accesses," in Proceedings of the Tenth Annual ACM-SIAM Symposium on Discrete Algorithms, ser. SODA '99. Philadelphia, PA, USA: Society for Industrial and Applied Mathematics, 1999, pp. 613--622.
[7]
V. K. Pingali, S. A. McKee, W. C. Hseih, and J. B. Carter, "Computation regrouping: Restructuring programs for temporal data cache locality," in Proceedings of the 16th International Conference on Supercomputing, ser. ICS '02. New York, NY, USA: ACM, 2002, pp. 252--261.
[8]
G. Cong and S. Sbaraglia, "A study on the locality behavior of minimum spanning tree algorithms," in Proceedings of the 13th International Conference on High Performance Computing, ser. HiPC'06. Berlin, Heidelberg: Springer-Verlag, 2006.
[9]
D. A. Bader, G. Cong, and J. Feo, "On the architectural requirements for efficient execution of graph algorithms," in Proceedings of the 2005 International Conference on Parallel Processing, ser. ICPP '05. Washington, DC, USA: IEEE Computer Society, 2005, pp. 547--556.
[10]
L. Yuan, C. Ding, D. Tefankovic, and Y. Zhang, "Modeling the locality in graph traversals," in Parallel Processing (ICPP), 2012 41st International Conference on, 2012, pp. 138--147.
[11]
S. Krishnamoorthy, U. Catalyurek, J. Nieplocha, and P. Sadayappan, "An approach to locality-conscious load balancing and transparent memory hierarchy management with a global-address-space parallel programming model," in Parallel and Distributed Processing Symposium, 2006. IPDPS 2006. 20th International, 2006, pp. 8 pp.--.
[12]
D. Bader and K. Madduri, "Designing multithreaded algorithms for breadth-first search and st-connectivity on the cray mta-2," in Parallel Processing, 2006. ICPP 2006. International Conference on, 2006, pp. 523--530.
[13]
A. Yoo, E. Chow, K. Henderson, W. McLendon, B. Hendrickson, and U. Catalyurek, "A scalable distributed parallel breadth-first search algorithm on bluegene/l," in Supercomputing, 2005. Proceedings of the ACM/IEEE SC 2005 Conference, 2005, pp. 25--25.
[14]
B. Derbel and M. Mosbah, "Distributed graph traversals by relabelling systems with applications."
[15]
B.-Y. Su, T. Brutch, and K. Keutzer, "Parallel bfs graph traversal on images using structured grid," in Image Processing (ICIP), 2010 17th IEEE International Conference on, 2010.
[16]
J. A. Konstan, B. N. Miller, D. Maltz, J. L. Herlocker, L. R. Gordon, and J. Riedl, "Grouplens: applying collaborative filtering to usenet news," Commun. ACM, vol. 40, no. 3, pp. 77--87, Mar. 1997.
[17]
P. Resnick, N. Iacovou, M. Suchak, P. Bergstrom, and J. Riedl, "Grouplens: an open architecture for collaborative filtering of netnews," in Proceedings of the 1994 ACM conference on Computer supported cooperative work, ser. CSCW '94. New York, NY, USA: ACM, 1994, pp. 175--186.
[18]
P. Resnick and H. R. Varian, "Recommender systems," Commun. ACM, vol. 40, no. 3, pp. 56--58, Mar. 1997.
[19]
J. S. Breese, D. Heckerman, and C. Kadie, "Empirical analysis of predictive algorithms for collaborative filtering," in Proceedings of the Fourteenth conference on Uncertainty in artificial intelligence, ser. UAI'98. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., 1998, pp. 43--52.
[20]
C. C. Aggarwal, J. L. Wolf, K.-L. Wu, and P. S. Yu, "Horting hatches an egg: a new graph-theoretic approach to collaborative filtering," in Proceedings of the fifth ACM SIGKDD international conference on Knowledge discovery and data mining, ser. KDD '99. New York, NY, USA: ACM, 1999, pp. 201--212.
[21]
Y. Wu, Q. Yan, D. Bickson, Y. Low, and Q. Yang, "Efficient multicore collaborative filtering," in ACM KDD CUP workshop, 2011.

Cited By

View all
  • (2017)Exploring big graph computing — An empirical study from architectural perspectiveJournal of Parallel and Distributed Computing10.1016/j.jpdc.2016.07.006108(122-137)Online publication date: Oct-2017
  • (2016)Predicting the memory bandwidth and optimal core allocations for multi-threaded applications on large-scale NUMA machines2016 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2016.7446083(419-431)Online publication date: Mar-2016
  • (2015)GraphBIGProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/2807591.2807626(1-12)Online publication date: 15-Nov-2015

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CF '14: Proceedings of the 11th ACM Conference on Computing Frontiers
May 2014
305 pages
ISBN:9781450328708
DOI:10.1145/2597917
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 May 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. cache-conscious
  2. collaborative filtering
  3. parallel computing

Qualifiers

  • Research-article

Conference

CF'14
Sponsor:
CF'14: Computing Frontiers Conference
May 20 - 22, 2014
Cagliari, Italy

Acceptance Rates

CF '14 Paper Acceptance Rate 28 of 62 submissions, 45%;
Overall Acceptance Rate 273 of 785 submissions, 35%

Upcoming Conference

CF '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2017)Exploring big graph computing — An empirical study from architectural perspectiveJournal of Parallel and Distributed Computing10.1016/j.jpdc.2016.07.006108(122-137)Online publication date: Oct-2017
  • (2016)Predicting the memory bandwidth and optimal core allocations for multi-threaded applications on large-scale NUMA machines2016 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2016.7446083(419-431)Online publication date: Mar-2016
  • (2015)GraphBIGProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/2807591.2807626(1-12)Online publication date: 15-Nov-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media