Boosting the Performance of FPGA-based Graph Processor Using Hybrid Memory Cube: A Case for Breadth First Search. Zhang<sup>S</sup>, J., Khoram<sup>S</sup>, S., & Li, J. In Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, of <strong>FPGA</strong> '17, pages 207–216, New York, NY, USA, 2017. ACM. (Acceptance Rate: 25%, 25 out of 101)
Paper doi abstract bibtex Large graph processing has gained great attention in recent years due to its broad applicability from machine learning to social science. Large real-world graphs, however, are inherently difficult to process efficiently, not only due to their large memory footprint, but also that most graph algorithms entail memory access patterns with poor locality and a low compute-to-memory access ratio. In this work, we leverage the exceptional random access performance of emerging Hybrid Memory Cube (HMC) technology that stacks multiple DRAM dies on top of a logic layer, combined with the flexibility and efficiency of FPGA to address these challenges. To our best knowledge, this is the first work that implements a graph processing system on a FPGA-HMC platform based on software/hardware co-design and co-optimization. We first present the modifications of algorithm and a platform-aware graph processing architecture to perform level-synchronized breadth first search (BFS) on FPGA-HMC platform. To gain better insights into the potential bottlenecks of proposed implementation, we develop an analytical performance model to quantitatively evaluate the HMC access latency and corresponding BFS performance. Based on the analysis, we propose a two-level bitmap scheme to further reduce memory access and perform optimization on key design parameters (e.g. memory access granularity). Finally, we evaluate the performance of our BFS implementation using the AC-510 development kit from Micron. We achieved 166 million edges traversed per second (MTEPS) using GRAPH500 benchmark on a random graph with a scale of 25 and an edge factor of 16, which significantly outperforms CPU and other FPGA-based large graph processors.
@inproceedings{zhang2017fpgaBFS,
author = {Zhang<sup>S</sup>, Jialiang and Khoram<sup>S</sup>, Soroosh and Li, Jing},
title = {Boosting the Performance of {FPGA-based} Graph Processor Using {Hybrid Memory Cube}: A Case for Breadth First Search},
booktitle = {Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays},
series = {<strong>FPGA</strong> '17},
year = {2017},
date={2017-02-22},
isbn = {978-1-4503-4354-1},
location = {Monterey, California, USA},
pages = {207--216},
numpages = {10},
url = {http://doi.acm.org/10.1145/3020078.3021737},
doi = {10.1145/3020078.3021737},
acmid = {3021737},
publisher = {ACM},
address = {New York, NY, USA},
abstract={Large graph processing has gained great attention in recent years due to its broad applicability from machine learning to social science. Large real-world graphs, however, are inherently difficult to process efficiently, not only due to their large memory footprint, but also that most graph algorithms entail memory access patterns with poor locality and a low compute-to-memory access ratio. In this work, we leverage the exceptional random access performance of emerging Hybrid Memory Cube (HMC) technology that stacks multiple DRAM dies on top of a logic layer, combined with the flexibility and efficiency of FPGA to address these challenges. To our best knowledge, this is the first work that implements a graph processing system on a FPGA-HMC platform based on software/hardware co-design and co-optimization. We first present the modifications of algorithm and a platform-aware graph processing architecture to perform level-synchronized breadth first search (BFS) on FPGA-HMC platform. To gain better insights into the potential bottlenecks of proposed implementation, we develop an analytical performance model to quantitatively evaluate the HMC access latency and corresponding BFS performance. Based on the analysis, we propose a two-level bitmap scheme to further reduce memory access and perform optimization on key design parameters (e.g. memory access granularity). Finally, we evaluate the performance of our BFS implementation using the AC-510 development kit from Micron. We achieved 166 million edges traversed per second (MTEPS) using GRAPH500 benchmark on a random graph with a scale of 25 and an edge factor of 16, which significantly outperforms CPU and other FPGA-based large graph processors.},
keywords = {conference, graph processor, hybrid memory cube:bfs},
note = {(Acceptance Rate: <u>25\%</u>, 25 out of 101)}
}
Downloads: 0
{"_id":"P857AihZJQMJqvww8","bibbaseid":"zhangsupssup-khoramsupssup-li-boostingtheperformanceoffpgabasedgraphprocessorusinghybridmemorycubeacaseforbreadthfirstsearch-2017","authorIDs":["2KRiEQojq3M55Y6zB","2MJSewNLcg5bzntZe","2TYEqH77sbG4AmETb","2jqhrwxKHG3E2cinQ","2oNRrYsgBpiLMK6CX","2yLRmeEchH5fjWnFq","36DcusYBAmnvtkaM9","3HByffL4qLbc5Jvz2","3LouwMkJRnALsZLiB","3SAEobZmLNGqoefKR","3WPaAfFAxJhwQ3eKg","3cHESKxB4NqGzFvSp","3eAWTvSt2ktGXX38k","3hZuMPL9XtW7Jbyht","3keP9Ky6T62nLPaw2","3rYjCxLgmDX7TQm9b","3sBcq3zaZn2cv4Jtz","42nNWAhR93s7YmEWs","43nNM7Wgjmf6MNbpJ","43rp2dQGkrTyrRNxz","457fokRjedbPAN2Es","48v9v4A48yynmASs4","499jRTuPg8PJxd7NN","4J43ubeDcMpzbWLYp","4gxaozRBp4p2FK9ti","4jjYsz4zYFRe8HkWH","4vsy2csM53FcHwJGr","4wgqb8BAEG6oq8rtn","5F4ztvnDmyB2CvNB4","5NyQ5EaZQbH58NhG3","5WtgvSNEkZSueQ6hw","5YJFiRwhWJgub2B4y","5e4e25c2d116fbde010001a1","5e4e32e61f1de5de0100007d","5e4e3c221f1de5de01000105","5e4e80999b7bbade0100003b","5e4e9ab464b624de0100001c","5e4f54678a3535f3010000d5","5e4f595c8a3535f301000112","5e4f70bba01931de01000090","5e4ffaa5f5b214df01000104","5e500515f5b214df010001ba","5e50293c8c3a2cde0100004e","5e509d864e0862e401000056","5e50ab884e0862e4010000f0","5e50c76ce3d144df01000096","5e512f6efe63cfde0100007c","5e5190f82793ecde01000011","5e51a7442793ecde01000100","5e51cb5e8346b4de01000009","5e51d3548346b4de01000046","5e53d7fc80e18ade01000152","5e540b00e81566de01000121","5e541a8880c0b0de01000035","5e548854fd5b13df01000009","5e54b46c929495df010000c0","5e54bcfd929495df01000136","5e55328bca58a8df01000018","5e553d75ca58a8df0100010b","5e55594fe89e5fde010000bc","5e56053c819fabdf01000082","5e56c4b596127bde010000df","5e56f2a17840dfde0100000c","5e58390a1f3fc8de01000115","5e589ac5aadc3adf0100001e","5e59617e56d60ade01000045","5e59a395ad6c7fde010000fa","5e5a06683557f5df0100000e","5e5b58f0502fdadf01000013","5e5c26b715d8f5de01000084","5e5c75c7b6f2f6df01000059","5e5d2a60168391de01000135","5e5d56e0ad47bcde0100005f","5e5d5c2dad47bcde010000a6","5e5d92f55726ecdf01000084","5e5de721863279df01000068","5e5deeaf863279df010000af","5e5e9ec5c0a53dde01000272","5e5eed50cc2eefde010000df","5e5f2d1e8ca867de01000123","5e5f31009771b7de0100001d","5e5f48fc9771b7de01000132","5e60033d13e3aede010000b1","5e603d0a182590df010000d2","5e60783d9119f0de010000c3","5e608f6a1fc211de01000094","5e61cdc7abaeaede0100014f","5e61dad40c95fdde01000051","5e61eef4e091e3de01000005","5e6247bd3c8c6bde0100004b","5e62be06cb259cde010000b6","5e62f1fc377bb9de0100004b","5e64be4da8ac14df010000b1","5e65c22ed92058de010000e7","5e66af584b4a62de0100007e","5e6717a2511133df0100010b","5e67981bd527f0de01000162","5e687c9103bf55de01000164","5e6a4816d37d43de0100000d","5jKc5jiwYsMzRkhgf","5mAb3BaBZoQfx96Zo","5mSXWTGfMAtrz7zYK","5zjKxwHoigoc8spZi","69hnarjj2GEFneRWc","69v8J225DLD9hwzah","6axZQYuYD4NBe3Cvt","6b6FZpm4qCiexNvNx","6djuq3y2FtCvErHFB","7AG5L9eEpZMqdTi34","7ZH7u49PyMfjZZ6RQ","7hswG27Ru4NBpP7Tu","7zk8cQBmaPwQ5noud","82A9cZPrYxya3JhfX","8DHFdMeBTBuLcNSTh","8Dn3C4JaWyRospBZP","8dTvh3Ne5d6zrHLRS","99nDazDDGfAWtsoop","9FdXXQE2a79E6nQP7","9JFZR2mqfCAZSqqkj","9YB833et2pBebdrFX","9ZXoSKf9hQoJLHPaj","9gdABA9rZto7tiEf3","A3tsry2ajRY9L2925","ALJi6fuySpcANL5n8","ASJTF2tvJphLeyY3R","AYAQJfdprLQwe33dY","Af4ypssrkMgcg7kWc","AjYazRs4v57rS5pCS","Ap93j4EZNFWSpJzPP","B2ZmSfX5eiDojzqN9","BTTuAW2oaEHpSdYAX","BceEo8hASS8sgMiHx","CBvP5T2hAnjxuitdj","CDr8hxo3GMhhqxKA5","CcSg73adRbXn2J3Yi","CztZqiqW8xZX4ypep","D3PF2kvWtX2YJPdpf","DXZNrs6qrNMwFhqRF","E9FuayxzXZHSfmLmi","EfmboEHQ4RbM3erKf","EiyYKdYDg9HecE7h2","EjYTTiTbtFXZjWPKx","FDLbEqe4asicMqFMK","FM7p64aSvxeeZKMqr","Fnc8Yx9GQHBuxHKZZ","G86wsSdefcWQNRXJr","GF7vBGfKLas7y36rQ","GMpoSWAXmFXHv2HDX","Gb85sfHrPPGm8h4ym","GbbcKK489w9Rw7pCf","Gd6nicy5XaaNh8JmP","Gk6BXfYRQzP3aBPsK","GybnssYS55DRRBPNn","H2J6vXsyvo2nJp2qo","H33oWMDivAjriR9WX","H4deNpD9KLYfvgrsr","H6bhWpCjwu3suHLFN","HjZRDL65b4XGPNo83","Htwt4jADSB6QqgrAZ","J5saPge2MmWys43Lf","J7Aktgd42QFMCLWbN","JMq79uPxTYE5HwpmQ","JPZX3TsTMhMvFN74u","JXA6HFRyQmJSDtQfF","K9qi5m8TjSuBESj8L","KM6q7ZWyC53z6KnNz","KMvcSEzLuCg6Bdenr","KN7PgiZ7A6rar7ySE","KcpZWRBEtmoJyve9f","KhojFbFwpqSS6KATm","Kr5EaarigHLouafqA","KujvLLo9NCKcnk5x4","KzCz479stST6siYkp","KzH7AZhKSvXF6cA9R","L2qPCzfNiLfE3QgXG","L9t6wXTjKiiJ9cP65","LCt5yWDhGCXmJe93u","LYpqNPGJCHKX5YNdd","LdtzoMR7tWLmgJcbD","LfzqfcpEGWo44znSg","LpedTaZ6W9NySN27W","LvRSbofGsMBqDgjhR","ME4gZg6FeDFgou2e4","MNgpxg4WrsMhf2MWi","MQf4y8ft8fpLpjiga","MqqLdnTvEHQo6m7Qb","N8uacnGuEfxqp2z9L","NDKSb9nfLyWvEQZvZ","NP6bgsTrZM6R5x8Xy","NRbBDw26AXuxXyXdG","NYPC4eMWD2YkM43Ch","NaJNG7zyfHoykgxzJ","Ne3de7FiYR85w5GXg","PjB5yr9M6b4rnsRLo","Q2CzLsncS8nRMZf32","Q7FyxYio9xGYc7okZ","QJHyQuDdy5SExyNfv","QbjuksSZJzhqhTT2D","QrRMGESuBCGzQRA59","Qyx6uNxz3WYdnBhbJ","RR2nzjYTD6wTkSZqB","RpuvxTjbFpJyBxJ58","RrWkwBjHDKSBw3vKL","SB94kiDDGi9ZhpZDe","SDMqYCPYrBiQRPo5P","SPBoiw5EdbKhtpMoi","SWB4FsR5hXsJ9tbsp","SkSpX6iQWJzJPuEcD","SyAuxKEbyno99Nk74","TQRCWxDCM5EX2LRE9","Th4HhG4k9tN7aqNsw","TsXf66fctWq9zJ4rK","TuxA4BjavqzGesykW","TzHvXhb8AGhcS8W88","WB3HP6J2cQeuA2PqR","WJKTr7SEtnfopQyQg","WLe2vTY98n75hbGnH","WWvWreuJA4dEAM2fe","Wi5wrgotxfDo8fwmP","WqbNG5vyWbt95yZj8","WzwRWa7nsmDEDDeF7","X7JHxvd9XJMMdJ3N8","XRbuiAri95yGXSheR","XhmNWJPMgKd5z6Kok","Xqxxnq6b57FsesTXh","YBsqnQAWXDoT6LATf","YtFK3TTaTrhXHiAa2","Z4hYxE9oLN5KHEvxp","ZeKSsDyhdAEPfGv2r","ZekmojWmXbdGJpt8p","ZtnJ3NBzvmwSsppfq","aJ87opHHtjbohHqio","aQawH8yEQ4s8XymnZ","aQhv7XBA9PkJikMPd","aZh2eCi4ovmkSTGCP","amuk5ohLawEwjXwGm","asJRpipMryJuEhyQx","bBHKxgKvoJjfkPx8n","bE6fa8pAXj3Ghjtov","bfAkR7TkcwRpBwzLq","bkgqrJmgKSfAckD3L","bsJXRENay8FFNyPwm","bwmWvnBsmjDspAbCv","c7ZXBsuFetKceq4vo","cK2ohdsvH82iEiM26","cMpBQFMGDSnrdLkTP","cRnKu395FJWBvf7sD","cYyaa3erH63tdpjma","cZRq6oztKDDWpHYjm","cbtJBQnhBCCNCLgkw","cfXXyyj5Z8xMWqn6s","chhj2tbjsA45kuQLp","cpfk2rCp9sfJsTCLP","crmCnBTqEoMsFsZTW","cy8A62XQzAyrtKvoQ","d9qWtqpamiyrq5rts","dE9FNS7h4Eg3cffGj","dMNHuCopAKrGKz8zZ","dZuHfZiTpsav3buWR","dd5WogWNvKraKRzgK","dkfiudHfwMaCaFCKF","dxfit5RKYwhA4Qitq","eBfvRQg5uZKB9a8Ba","eFg4FHwxZwPrTJzRN","eMLXBTbzHCWyzGkTR","eoQkq5cEvzefLdd4F","fXDEhpQhezB4GXzaP","fdPoxnHZZuMsuhLpd","fdWFYvbzdQAkiozZW","fffxFfX2HkCYDm2PQ","fgQzEKLufSmhHop3p","frnRbvNE6AYFhQKQz","fzNJSn2qFpd2w9Wwp","g7iM84xGkFEiJ9Aqd","gLZ6Wa53KmtYnCJ3L","gMdENkWyXbykDKys6","gNQrosuEGDguiu7xg","gTHZH42oEiJYPxqu2","gXwh8dBZzp7nT9WBZ","gkr22X6indrmjWwi4","gnXqhEfTb5FfLDhr2","gpCgrGWgaoZpifkxK","gtTX28NxDKAoY6m6C","h3szBTXZAqMJFeEdf","h49dHvPJ4AZ7eMf4m","hNnBRpDKkhhnpq92p","hhmtBGmvGuCYXEzAh","hoAdYe9zCbQCZnwzE","hq3Fvb3TNjeE2CjAj","hthbQZzkMziPaLFP7","i89bS39YpWshgQ6us","id4hP2pJRCSSwqWpj","ifnhQtMYwYBdvfcA3","isPHbwgvneF4PiSb2","isupwb99HhYFvEGZ8","j9an8ZfLshaJxvuSY","jW9mz7vZ9QQ2JywFa","jbnWQNn5mCwe6Hi4q","jvvs8mRfg3x6QfPJY","kF78jmFYoc9gqCr9Y","kgHB9bmwoSjShj3XJ","kgboa5W66B8hsxE4F","ksSW9teSKph3Pa7dP","kvh6hbt8Dm3THHTJR","mJHz8DpwqWRrZxGzt","meGSjC6yQYLjzCJEv","n3D3aDPQ48Nu3o9zX","n3uMPMg4gXeLuZHW3","nAM5uFqBTcMqG6a5d","nBQvuJjSpqtG2o5uY","nEAMMbvk8P5NRsctD","nTDsSFYg7uio6hrFY","naRt8qwC7qRxJTGvH","ndpqncfDQf2jdw8fk","nrcu5Fhbd39o5Xprh","nwgvmvT35htSREBor","o2y3caD5e9DTvNMaE","oJM36iMLfAKDvPMgp","oMFarEz5gn545PFZm","oNgJxQwNKvz5HrKph","oT93fp87c7Kgu7mAA","oaGWLgvfP7QiKGnXe","ohD4RiG3amqtvmKvM","orZhZJQfF3jsJMGvf","p597sP64aoPGMzCyF","pD3J6C4uKohHZr6Y6","pf6HKMnPxM6zepwju","pn3SQteeEkmuHKKMw","psPaEtWGfbqeTdpWK","pwg3jZ9g78zLGxPmA","q343mKJMtGNoHdZMb","qCumdTL2tyARskZbM","qEhZAQ2DnkhCsfTg8","qGyRTvcNmZLWhiw8g","qJhhGyZDzqRwmivzj","qb98nwPtaERPdtsbQ","qwmCSyFCuBrDmEGXW","rBCQ5de3CXQn3q5af","rQj2Eqqg6vyTSnR7X","rgAtrunhrA784RCFa","rheviCgzmGR5DzWqG","rk4QhgWBYfExt3Gpo","rpfgXtwvHCEjcCFCh","ruWWJtEYwZB75GPaH","rxbMSXN6e5Y56Totj","s3fBaaRnGMu63MJNL","sMiPt8vek6sh7AdHk","sY33zMAX3ZakPWoCj","sf7iKRJZs5pLSeyxa","sszy6KaZ7N7LKLyDx","t6BspTFToGEHcKkwA","t9snNLhFB5yev848B","tG8T6JhXLzbGZDrqi","tJYeQqW2tYHTMnxke","tM5EbCQRY5p6avLop","tevd4K5ZWdrTRB5Nd","tgCGijvkAHk94L5oz","th6J3AqPyvvs2ckic","totBcWkuHJmzjWTSW","u3Qs2zM8yvDPSZ5C7","uMSsai7FNJ3rStvxE","uZgvupgbzGGdvEyS3","ueFtpPBKuPtcZ2v5E","ugEnuwwehSSJruAJv","utq8AEzBDgaBcM6mt","v3QwdDKqhQjpJ9wM2","v44HH2EYHTWc8btkv","v5KY33ksBPL2kNCey","vGHB7Tw2Wt7qSSdyJ","vid4kELvCAFa2PpkR","vqHPB8BjGYHCtpNZi","vqKDynMcADSaAbwAn","vzAGu7twWqyLb79Zq","wG9G4qcFJy5mQprZw","wLSaGARnEeANfkwsh","wPytTpgpbXtuRMctM","wYEYkYu9pPe6Tk4tR","wbNFhZCHPJrcPNTN9","wqR6579SrkXe2i964","wtSyJfq3cuAF2DcJA","wz7HjDKuBFZHvGxoN","x45DsrZMbXN9ToFAx","xEbpfk4dNn3K8u2Tw","xYQHhWFAsCdZLeejm","xa4Q5QzwZnTAH7aad","xgF9LeKxQRycHzWgK","xh92xzet78NrtQMjB","xyngvJYXTNBp8x7Qk","y8yJPLqAFX7xixyTi","yEdtxFWKgpo7Xq8s6","yGahZctmocWkAZTPc","yN9ZWtoy9d8kFzP8k","yXdE4fkvQMuyPWdaP","zjtQYJMXnoDbjboFf","zrzuXCRNbaZeCDhyz"],"author_short":["Zhang<sup>S</sup>, J.","Khoram<sup>S</sup>, S.","Li, J."],"bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"propositions":[],"lastnames":["Zhang<sup>S</sup>"],"firstnames":["Jialiang"],"suffixes":[]},{"propositions":[],"lastnames":["Khoram<sup>S</sup>"],"firstnames":["Soroosh"],"suffixes":[]},{"propositions":[],"lastnames":["Li"],"firstnames":["Jing"],"suffixes":[]}],"title":"Boosting the Performance of FPGA-based Graph Processor Using Hybrid Memory Cube: A Case for Breadth First Search","booktitle":"Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","series":"<strong>FPGA</strong> '17","year":"2017","date":"2017-02-22","isbn":"978-1-4503-4354-1","location":"Monterey, California, USA","pages":"207–216","numpages":"10","url":"http://doi.acm.org/10.1145/3020078.3021737","doi":"10.1145/3020078.3021737","acmid":"3021737","publisher":"ACM","address":"New York, NY, USA","abstract":"Large graph processing has gained great attention in recent years due to its broad applicability from machine learning to social science. Large real-world graphs, however, are inherently difficult to process efficiently, not only due to their large memory footprint, but also that most graph algorithms entail memory access patterns with poor locality and a low compute-to-memory access ratio. In this work, we leverage the exceptional random access performance of emerging Hybrid Memory Cube (HMC) technology that stacks multiple DRAM dies on top of a logic layer, combined with the flexibility and efficiency of FPGA to address these challenges. To our best knowledge, this is the first work that implements a graph processing system on a FPGA-HMC platform based on software/hardware co-design and co-optimization. We first present the modifications of algorithm and a platform-aware graph processing architecture to perform level-synchronized breadth first search (BFS) on FPGA-HMC platform. To gain better insights into the potential bottlenecks of proposed implementation, we develop an analytical performance model to quantitatively evaluate the HMC access latency and corresponding BFS performance. Based on the analysis, we propose a two-level bitmap scheme to further reduce memory access and perform optimization on key design parameters (e.g. memory access granularity). Finally, we evaluate the performance of our BFS implementation using the AC-510 development kit from Micron. We achieved 166 million edges traversed per second (MTEPS) using GRAPH500 benchmark on a random graph with a scale of 25 and an edge factor of 16, which significantly outperforms CPU and other FPGA-based large graph processors.","keywords":"conference, graph processor, hybrid memory cube:bfs","note":"(Acceptance Rate: <u>25%</u>, 25 out of 101)","bibtex":"@inproceedings{zhang2017fpgaBFS,\n author = {Zhang<sup>S</sup>, Jialiang and Khoram<sup>S</sup>, Soroosh and Li, Jing},\n title = {Boosting the Performance of {FPGA-based} Graph Processor Using {Hybrid Memory Cube}: A Case for Breadth First Search},\n booktitle = {Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays},\n series = {<strong>FPGA</strong> '17},\n year = {2017},\n date={2017-02-22},\n isbn = {978-1-4503-4354-1},\n location = {Monterey, California, USA},\n pages = {207--216},\n numpages = {10},\n url = {http://doi.acm.org/10.1145/3020078.3021737},\n doi = {10.1145/3020078.3021737},\n acmid = {3021737},\n publisher = {ACM},\n address = {New York, NY, USA},\n abstract={Large graph processing has gained great attention in recent years due to its broad applicability from machine learning to social science. Large real-world graphs, however, are inherently difficult to process efficiently, not only due to their large memory footprint, but also that most graph algorithms entail memory access patterns with poor locality and a low compute-to-memory access ratio. In this work, we leverage the exceptional random access performance of emerging Hybrid Memory Cube (HMC) technology that stacks multiple DRAM dies on top of a logic layer, combined with the flexibility and efficiency of FPGA to address these challenges. To our best knowledge, this is the first work that implements a graph processing system on a FPGA-HMC platform based on software/hardware co-design and co-optimization. We first present the modifications of algorithm and a platform-aware graph processing architecture to perform level-synchronized breadth first search (BFS) on FPGA-HMC platform. To gain better insights into the potential bottlenecks of proposed implementation, we develop an analytical performance model to quantitatively evaluate the HMC access latency and corresponding BFS performance. Based on the analysis, we propose a two-level bitmap scheme to further reduce memory access and perform optimization on key design parameters (e.g. memory access granularity). Finally, we evaluate the performance of our BFS implementation using the AC-510 development kit from Micron. We achieved 166 million edges traversed per second (MTEPS) using GRAPH500 benchmark on a random graph with a scale of 25 and an edge factor of 16, which significantly outperforms CPU and other FPGA-based large graph processors.},\n keywords = {conference, graph processor, hybrid memory cube:bfs},\n note = {(Acceptance Rate: <u>25\\%</u>, 25 out of 101)}\n} \n\n\n","author_short":["Zhang<sup>S</sup>, J.","Khoram<sup>S</sup>, S.","Li, J."],"key":"zhang2017fpgaBFS","id":"zhang2017fpgaBFS","bibbaseid":"zhangsupssup-khoramsupssup-li-boostingtheperformanceoffpgabasedgraphprocessorusinghybridmemorycubeacaseforbreadthfirstsearch-2017","role":"author","urls":{"Paper":"http://doi.acm.org/10.1145/3020078.3021737"},"keyword":["conference","graph processor","hybrid memory cube:bfs"],"metadata":{"authorlinks":{"li, j":"https://www.seas.upenn.edu/~janeli/index.html"}},"downloads":0,"html":""},"bibtype":"inproceedings","biburl":"http://www.seas.upenn.edu/~janeli/files/publications.bib","creationDate":"2020-02-20T06:31:11.502Z","downloads":0,"keywords":["conference","graph processor","hybrid memory cube:bfs"],"search_terms":["boosting","performance","fpga","based","graph","processor","using","hybrid","memory","cube","case","breadth","first","search","zhang<sup>s</sup>","khoram<sup>s</sup>","li"],"title":"Boosting the Performance of FPGA-based Graph Processor Using Hybrid Memory Cube: A Case for Breadth First Search","year":2017,"dataSources":["5Z6JJjZhfwytLGvSE","yLYmooEyKB3QB6BcW","A5c6eTvEQwuC3uBTF"]}