ABSTRACT
The large penetration and continued growth in ownership of personal electronic devices represents a freely available and largely untapped source of computing power. To leverage those, we present Pando, a new volunteer computing tool based on a declarative concurrent programming model and implemented using JavaScript, WebRTC, and WebSockets. This tool enables a dynamically varying number of failure-prone personal devices contributed by volunteers to parallelize the application of a function on a stream of values, by using the devices' browsers. We show that Pando can provide throughput improvements compared to a single personal device, on a variety of compute-bound applications including animation rendering and image processing. We also show the flexibility of our approach by deploying Pando on personal devices connected over a local network, on Grid5000, a French-wide computing grid in a virtual private network, and seven PlanetLab nodes distributed in a wide area network over Europe.
- 1981. Transmission Control Protocol. https://www.ietf.org/rfc/rfc793.txt. [Online; accessed 16-October-2018].Google Scholar
- 2003. The Base16, Base32, and Base64 Data Encodings. https://tools.ietf.org/html/rfc3548. [Online; accessed 16-October-2018].Google Scholar
- 2008. PlanetLab Europe. https://www.planet-lab.eu. [Online; accessed 12-May-2019].Google Scholar
- 2008. The Chromium Projects. https://www.chromium.org/. [Online; accessed 12-October-2018].Google Scholar
- 2010. Web Workers. https://w3c.github.io/workers/. [Online; accessed 26-October-2018].Google Scholar
- 2011. The WebSocket Protocol. https://tools.ietf.org/html/rfc6455. [Online; accessed 13-February-2017].Google Scholar
- 2011. WebCL: Heterogeneous parallel computing in HTML5 web browsers. https://www.khronos.org/webcl/. [Online; accessed 26-October-2018].Google Scholar
- 2013. The Dat project. https://datproject.org/ [Online; accessed 12-October-2018].Google Scholar
- 2013. WebTorrent. https://webtorrent.io/. [Online; accessed 17-April-2017].Google Scholar
- 2014. ZeroMQ. http://zeromq.org/. [Online; accessed 12-October-2018].Google Scholar
- 2015. Novena Main Page. https://www.kosagi.com/w/index.php?title=Novena_Main_Page. [Online; accessed 9-November-2018].Google Scholar
- 2017. Beaker. https://beakerbrowser.com/. [Online; accessed 12-October-2018].Google Scholar
- 2017. Browserify. http://browserify.org/. [Online; accessed 15-April-2017].Google Scholar
- 2017. Matjuice Repository. https://github.com/sable/matjuice. [Online; accessed 13-February-2017].Google Scholar
- 2017. Pull-Stream Module List. https://pull-stream.github.io/. [Online; accessed 25-July-2017].Google Scholar
- 2017. Simple-Peer. https://github.com/feross/simple-peer. [Online; accessed 17-April-2017].Google Scholar
- 2017. The Collatz Conjecture. http://boinc.thesonntags.com/collatz/. [Online; accessed 14-February-2017].Google Scholar
- 2017. WebRTC 1.0: Real-time Communication Between Browsers. https://www.w3.org/TR/webrtc/. [Online; accessed 05-April-2017].Google Scholar
- 2018. Deadline Compute Management System. https://deadline.thinkboxsoftware.com/. [Online; accessed 16-October-2018].Google Scholar
- 2018. Heroku. https://www.heroku.com/ [Online; accessed 17-November-2017].Google Scholar
- 2018. Node Package Manager. https://www.npmjs.com/ [Online; accessed 17-November-2017].Google Scholar
- 2018. Raspberry Pi. https://www.raspberrypi.org/Google Scholar
- 2018. Standard ECMA-262. https://www.ecma-international.org/publications/standards/Ecma-262.htm. [Online; accessed 16-October-2018].Google Scholar
- 2018. Zinc Render. https://www.zyncrender.com/. [Online; accessed 16-October-2018].Google Scholar
- 2019. Gartner Says Global Smartphone Sales Stalled in the Fourth Quarter of 2018. https://www.gartner.com/en/newsroom/. [Online; accessed 17-May-2019].Google Scholar
- Nabil Abdennadher and Regis Boesch. 2005. Towards a Peer-to-Peer Platform for High Performance Computing. In Proceedings of the Eighth International Conference on High-Performance Computing in Asia-Pacific Region. IEEE, 8-pp. https://doi.org/10.1109/HPCASIA.2005.98Google ScholarDigital Library
- Leila Abidi, Christophe Cérin, Gilles Fedak, and Haiwu He. 2015. Towards an Environment for doing Data Science that runs in Browsers. In Proceedings of the International Conference on Smart City/SocialCom/SustainCom (SmartCity). IEEE, 662--667. https://doi.org/10.1109/SmartCity.2015.145Google ScholarCross Ref
- Albert D Alexandrov, Maximilian Ibel, Klaus E Schauser, and Chris J Scheiman. 1997. SuperWeb: Towards a global web-based parallel computing infrastructure. In Parallel Processing Symposium, 1997. Proceedings., 11th International. IEEE, 100--106.Google ScholarCross Ref
- David P. Anderson. 2004. BOINC: A System for Public-Resource Computing and Storage. In Proceedings of the 5th IEEE/ACM International Workshop on Grid Computing (GRID). IEEE, 4--10. https://doi.org/10.1109/GRID.2004.14Google ScholarDigital Library
- David P. Anderson. 2019. BOINC: A Platform for Volunteer Computing. CoRR abs/1903.01699 (2019). arXiv:1903.01699 http://arxiv.org/abs/1903.01699Google Scholar
- Daniel Balouek, Alexandra Carpen Amarie, Ghislain Charrier, Frédéric Desprez, Emmanuel Jeannot, Emmanuel Jeanvoine, Adrien Lèbre, David Margery, Nicolas Niclausse, Lucas Nussbaum, Olivier Richard, Christian Pérez, Flavien Quesnel, Cyril Rohr, and Luc Sarzyniec. 2013. Adding Virtualization Capabilities to the Grid'5000 Testbed. In Cloud Computing and Services Science, IvanI. Ivanov, Marten Sinderen, Frank Leymann, and Tony Shan (Eds.). Communications in Computer and Information Science, Vol. 367. Springer International Publishing, 3--20. https://doi.org/10.1007/978-3-319-04519-1_1Google Scholar
- Arash Baratloo, Mehmet Karaul, Zvi M Kedem, and Peter Wijckoff. 1999. Charlotte: Metacomputing on the Web. Future Generation Computer Systems 15, 5 (1999), 559--570. https://doi.org/10.1016/S0167-739X(99)00009-6Google ScholarDigital Library
- Kevin Berry. 2009. Distributed and Grid Computing via the Browser. In Proceedings of the 3rd Villanova University Undergraduate Computer Science Research Symposium (CSRS 2009).Google Scholar
- Fabio Boldrin, Chiara Taddia, and Gianluca Mazzini. 2007. Distributed computing through web browser. In Vehicular Technology Conference, 2007. VTC-2007 Fall. 2007 IEEE 66th. IEEE, 2020--2024.Google ScholarCross Ref
- Mitch Cherniack, Hari Balakrishnan, Magdalena Balazinska, Donald Carney, Ugur Cetintemel, Ying Xing, and Stanley B Zdonik. 2003. Scalable Distributed Stream Processing.. In CIDR, Vol. 3. 257--268.Google Scholar
- Pawel Chorazyk, Aleksander Byrski, Kamil Pietak, Marek Kisiel-Dorohinicki, and Wojciech Turek. 2017. Volunteer computing in a scalable lightweight web-based environment. Computer Assisted Methods in Engineering and Science 24, 1 (2017), 17--40.Google Scholar
- Bernd O. Christiansen, Peter Cappello, Mihai F. Ionescu, Michael O. Neary, Klaus E. Schauser, and Daniel Wu. 1997. Javelin: Internet-based parallel computing using Java. Concurrency: Practice and Experience 9, 11 (1997), 1139--1160. https://doi.org/10.1002/(SICI)1096-9128(199711)9:11<1139::AID-CPE349> 3.0.CO;2-KGoogle ScholarCross Ref
- Jeffrey Dean and Sanjay Ghemawat. 2008. MapReduce: simplified data processing on large clusters. Commun. ACM 51, 1 (2008), 107--113.Google ScholarDigital Library
- Roman Dębski, Tomasz Krupa, and Przemyslaw Majewski. 2013. ComcuteJS: A web browser based platform for large-scale computations. Computer Science 14 (2013).Google Scholar
- David Dias and Luís Veiga. 2018. BrowserCloud.js - A federated community cloud served by a P2P overlay network on top of the web platform. In Proceedings of the 33rd Annual ACM Symposium on Applied Computing (SAC '18). ACM, New York, NY, USA, 2175--2184. https://doi.org/10.1145/3167132.3167366Google ScholarDigital Library
- Jerzy Duda and Wojciech Dłubacz. 2012. Distributed Evolutionary Computing System Based on Web Browsers with JavaScript. In International Workshop on Applied Parallel Computing. Springer, 183--191.Google Scholar
- Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. 1988. Consensus in the Presence of Partial Synchrony. J. ACM 35, 2 (April 1988), 288--323. https://doi.org/10.1145/42282.42283Google ScholarDigital Library
- Tomasz Fabisiak and Arkadiusz Danilecki. 2017. Browser-based harnessing of voluntary computational power. Foundations of Computing and Decision Sciences 42, 1 (2017), 3--42. https://doi.org/10.1515/fcds-2017-0001Google ScholarCross Ref
- Gilles Fedak. 2012. Desktop Grid Computing. Chapman & All/CRC Press. 362 pages. https://hal.inria.fr/hal-00757056Google Scholar
- Gilles Fedak. 2015. Contributions to Desktop Grid Computing. Habilitation à diriger des recherches. Ecole Normale Supérieure de Lyon. https://hal.inria.fr/tel-01158462Google Scholar
- David Finkel, Craig E Wills, Brian Brennan, and Chris Brennan. 1999. Distriblets: Java-based distributed computing on the Web. Internet Research 9, 1 (1999), 35--40.Google ScholarCross Ref
- Vincent Foley-Bourgon and Laurie Hendren. 2016. Efficiently Implementing the Copy Semantics of MATLAB's Arrays in JavaScript. In Proceedings of the 12th Symposium on Dynamic Languages (DLS 2016). ACM, New York, NY, USA, 72--83. https://doi.org/10.1145/2989225.2989235Google ScholarDigital Library
- Ilya Grigorik. 2009. Collaborative Map-Reduce in the Browser. https://www.igvita.com/2009/03/03/collaborative-map-reduce-in-the-browser/. [Online; accessed 16-October-2018].Google Scholar
- Jayanth Gummaraju and Mendel Rosenblum. 2005. Stream Programming on General-Purpose Processors. In Proceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 38). IEEE Computer Society, Washington, DC, USA, 343--354. https://doi.org/10.1109/MICRO.2005.32Google ScholarDigital Library
- Andreas Haas, Andreas Rossberg, Derek L. Schuff, Ben L. Titzer, Michael Holman, Dan Gohman, Luke Wagner, Alon Zakai, and JF Bastien. 2017. Bringing the Web Up to Speed with WebAssembly. SIGPLAN Not. 52, 6 (June 2017), 185--200. https://doi.org/10.1145/3140587.3062363Google ScholarDigital Library
- Andrew B Harrison. 2008. Peer-to-grid computing: Spanning diverse service-oriented architectures. Ph.D. Dissertation. Cardiff University (United Kingdom). https://search.proquest.com/openview/69ebafc7df184c92a437b66ee04345ee/Google Scholar
- David Herrera, Hanfeng Chen, Erick Lavoie, and Laurie Hendren. 2018. Numerical Computing on the Web: Benchmarking for the Future. In Proceedings of the 14th ACM SIGPLAN International Symposium on Dynamic Languages (DLS 2018). ACM, New York, NY, USA, 88--100. https://doi.org/10.1145/3276945.3276968Google ScholarDigital Library
- Yonghao Hu, Zhaohui Chen, Xiaojun Liu, Fei Huang, and Jinyuan Jia. 2017. WebTorrent Based Fine-grained P2P Transmission of Large-scale WebVR Indoor Scenes. In Proceedings of the 22Nd International Conference on 3D Web Technology (Web3D '17). ACM, New York, NY, USA, Article 7, 8 pages. https://doi.org/10.1145/3055624.3075944Google ScholarDigital Library
- Abhinav Jangda, Bobby Powers, Emery D. Berger, and Arjun Guha. 2019. Not So Fast: Analyzing the Performance of WebAssembly vs. Native Code. In 2019 USENIX Annual Technical Conference (USENIX ATC 19). USENIX Association, Renton, WA, 107--120. https://www.usenix.org/conference/atc19/presentation/jangdaGoogle Scholar
- Alan B. Johnston and Daniel C. Burnett. 2012. WebRTC: APIs and RTCWEB Protocols of the HTML5 Real-Time Web. Digital Codex LLC, USA.Google Scholar
- Brian W. Kernighan and Rob Pike. 1983. The UNIX Programming Environment. Prentice Hall Professional Technical Reference.Google Scholar
- Faiz Khan, Vincent Foley-Bourgon, Sujay Kathrotia, Erick Lavoie, and Laurie Hendren. 2014. Using JavaScript and WebCL for Numerical Computations: A Comparative Study of Native and Web Technologies. In Proceedings of the 10th ACM Symposium on Dynamic Languages (DLS '14). ACM, New York, NY, USA, 91--102. https://doi.org/10.1145/2661088.2661090Google ScholarDigital Library
- Jik-Soo Kim. 2009. Decentralized and scalable resource management for desktop grids. Ph.D. Dissertation. University of Maryland, College Park. http://hdl.handle.net/1903/9259Google Scholar
- Jik-Soo Kim, Beomseok Nam, and Alan Sussman. 2014. Scalable and effective peer-to-peer desktop grid system. Cluster Computing 17, 4 (2014), 1185--1201. https://doi.org/10.1007/s10586-014-0390-zGoogle ScholarDigital Library
- Jon Klein and Lee Spector. 2007. Unwitting distributed genetic programming via asynchronous JavaScript and XML. In Proceedings of the 9th annual conference on Genetic and evolutionary computation. ACM, 1628--1635.Google ScholarDigital Library
- Fumikazu Konishi, Manabu Ishii, Shingo Ohki, Ryo UMESTU, and Akihiko Konagaya. 2007. RABC: A conceptual design of pervasive infrastructure for browser computing based on AJAX technologies. In Cluster Computing and the Grid, 2007. CCGRID 2007. Seventh IEEE International Symposium on. IEEE, 661--672.Google ScholarDigital Library
- Makoto Kuhara, Noriki Amano, Kan Watanabe, Yasuyuki Nogami, and Masaru Fukushi. 2014. A peer-to-peer communication function among Web browsers for Web-based Volunteer Computing. In Communications and Information Technologies (ISCIT), 2014 14th International Symposium on. IEEE, 383--387.Google ScholarCross Ref
- Philipp Langhans, Christoph Wieser, and François Bry. 2013. Crowdsourcing MapReduce: JSMapReduce. In Proceedings of the 22nd International Conference on World Wide Web. ACM, 253--256.Google ScholarDigital Library
- Erick Lavoie. 2017. Pando Handbook. https://github.com/elavoie/pando-handbook [Online; accessed 17-November-2017].Google Scholar
- Erick Lavoie. 2017. Pando Repository. https://github.com/elavoie/pando-computing [Online; accessed 17-November-2017].Google Scholar
- Erick Lavoie. 2017. Pando Server. https://github.com/elavoie/pando-server [Online; accessed 17-November-2017].Google Scholar
- Erick Lavoie. 2017. Pull-LendStream Implementation. https://github.com/elavoie/pull-lend-stream and https://www.npmjs.com/package/pull-lend-stream. [Online; accessed 15-April-2017].Google Scholar
- Erick Lavoie. 2018. Pull-Stubborn Implementation. https://github.com/elavoie/pull-stubborn. [Online; accessed 28-October-2018].Google Scholar
- Erick Lavoie. 2019. Personal Volunteer Computing. Ph.D. Dissertation. McGill University.Google Scholar
- Erick Lavoie and Laurie Hendren. 2019. Personal Volunteer Computing. In Proceedings of the 16th ACM International Conference on Computing Frontiers (CF '19). ACM, New York, NY, USA, 240--246. https://doi.org/10-1145/3310273.3322819Google ScholarDigital Library
- Erick Lavoie, Laurie Hendren, Fréderic Desprez, and Miguel Correia. 2019. Genet: A Quickly Scalable Fat-Tree Overlay for Personal Volunteer Computing using WebRTC. arXiv e-prints, Article arXiv:1904.11402 (Apr 2019), arXiv:1904.11402 pages. arXiv:cs.DC/1904.11402 Publication to appear at SASO'19.Google Scholar
- Guillaume Leclerc, Joshua E. Auerbach, Giovanni Iacca, and Dario Floreano. 2016. The Seamless Peer and Cloud Evolution Framework. In Proceedings of the Genetic and Evolutionary Computation Conference 2016 (GECCO '16). ACM, New York, NY, USA, 821--828. https://doi.org/10.1145/2908812.2908886Google ScholarDigital Library
- Tommy MacWilliam and Cris Cecka. 2013. CrowdCL: Web-based volunteer computing with WebCL. In High Performance Extreme Computing Conference (HPEC), 2013 IEEE. IEEE, 1--6.Google ScholarCross Ref
- Gonzalo J Martınez and Leonardo Val. 2015. Capataz: a framework for distributing algorithms via the World Wide Web. CLEI Electronic Journal 18, 02 (2015), 2. http://www.scielo.edu.uy/scielo.php?script=sci_arttext&pid=S0717-50002015000200002&lng=en&nrm=isoGoogle Scholar
- Petar Maymounkov and David Mazieres. 2002. Kademlia: A peer-to-peer information system based on the xor metric. In International Workshop on Peer-to-Peer Systems. Springer, 53--65.Google ScholarDigital Library
- Edward Meeds, Remco Hendriks, Said Al Faraby, Magiel Bruntink, and Max Welling. 2015. MLitB: machine learning in the browser. PeerJ Computer Science 1, e11 (2015). https://doi.org/10.7717/peerj-cs.11Google Scholar
- Juan Julián Merelo-Guervós, Pedro A Castillo, Juan Luis Jiménez Laredo, A Mora Garcia, and Alberto Prieto. 2008. Asynchronous distributed genetic algorithms with Javascript and JSON. In Evolutionary Computation, 2008. CEC 2008.(IEEE World Congress on Computational Intelligence). IEEE Congress on. IEEE, 1372--1379.Google ScholarCross Ref
- Ujan Mukhopadhyay, Anthony Skjellum, Oluwakemi Hambolu, Jon Oakley, Lu Yu, and Richard Brooks. 2016. A brief survey of cryptocurrency systems. In Privacy, Security and Trust (PST), 2016 14th Annual Conference on. IEEE, 745--752.Google ScholarCross Ref
- Satoshi Nakamoto. 2008. Bitcoin: A peer-to-peer electronic cash system. (2008).Google Scholar
- Sagnik Nandy. 2005. Large scale autonomous computing systems. Ph.D. Dissertation. UC San Diego. https://escholarship.org/uc/item/3s96x9qcGoogle Scholar
- Noam Nisan, Shmulik London, Oded Regev, and Noam Camiel. 1998. Globally distributed computation over the internet-the popcorn project. In Distributed Computing Systems, 1998. Proceedings. 18th International Conference on. IEEE, 592--601.Google ScholarCross Ref
- J. K. Nurminen, A. J. R. Meyn, E. Jalonen, Y. Raivio, and R. GarcÄśa Marrero. 2013. P2P media streaming with HTML5 and WebRTC. In 2013 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS). 63--64. https://doi.org/10.1109/INFCOMW.2013.6970739Google ScholarCross Ref
- Pijush Kanti Dutta Pramanik, Prasenjit Choudhury, and Anindita Saha. 2017. Economical supercomputing thru smartphone crowd computing: An assessment of opportunities, benefits, deterrents, and applications from India's perspective. In Proceedings of the 4th International Conference on Advanced Computing and Communication Systems (ICACCS). IEEE, 1--7. https://doi.org/10.1109/ICACCS.2017.8014613Google ScholarCross Ref
- Sean R. Wilkinson and Jonas S. Almeida. 2014. QMachine: commodity supercomputing in web browsers. BMC Bioinformatics (2014), 1--1. https://doi.org/10.1186/1471-2105-15-176Google Scholar
- Cushing Reginald, Ganeshwara Putra, Spiros Koulouzis, Adam Belloum, Marian Bubak, and Cees de Laat. 2013. Distributed Computing on an Ensemble of Browsers. IEEE Internet Computing 17, 5 (Sept. 2013), 54--61. https://doi.org/10.1109/MIC. 2013.3Google Scholar
- Andrew Rosen. 2016. Towards a Framework for DHT Distributed Computing. Ph.D. Dissertation. Georgia State University. https://scholarworks.gsu.edu/cs_diss/107Google Scholar
- Antony Rowstron and Peter Druschel. 2001. Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In IFIP/ACM International Conference on Distributed Systems Platforms and Open Distributed Processing. Springer, 329--350.Google ScholarDigital Library
- David P Roy, MA Wulder, Thomas R Loveland, CE Woodcock, RG Allen, MC Anderson, D Helder, JR Irons, DM Johnson, R Kennedy, et al. 2014. Landsat-8: Science and product vision for terrestrial global change research. Remote sensing of Environment 145 (2014), 154--172.Google Scholar
- Sandy Ryza and Tom Wall. 2010. MRJS: A JavaScript MapReduce Framework for Web Browsers. http://www.cs.brown.edu/courses/csci2950-u/f11/papers/mrjs.pdfGoogle Scholar
- Luis FG Sarmenta and Satoshi Hirano. 1999. Bayanihan: Building and Studying Web-Based Volunteer Computing Systems using Java. Future Generation Computer Systems 15, 5-6 (1999), 675--686.Google ScholarDigital Library
- Luis Francisco Gumaru Sarmenta. 2001. Volunteer computing. Ph.D. Dissertation. Massachusetts Institute of Technology. http://hdl.handle.net/1721.1/16773Google Scholar
- John F Shoch and Jon A Hupp. 1982. The "worm" programs - early experience with a distributed computation. Commun. ACM 25, 3 (1982), 172--180. https://doi.org/10.1145/358453.358455Google ScholarDigital Library
- Gert Smolka. 1995. The Oz programming model. In Computer science today. Springer, 324--343.Google Scholar
- Ion Stoica, Robert Morris, David Karger, M Frans Kaashoek, and Hari Balakrishnan. 2001. Chord: A scalable peer-to-peer lookup service for internet applications. ACM SIGCOMM Computer Communication Review 31, 4 (2001), 149--160.Google ScholarDigital Library
- Cristiano Tapparello, Colin Funai Bora Karaoglu, He Ba, Shurouq Hijazi, Jiye Shi, Abner Aquino, and Wendi Heinzelman. 2015. Volunteer Computing on Mobile Devices: State of the Art and Future. In Enabling Real-Time Mobile Cloud Computing through Emerging Technologies, Tolga Soyata (Ed.). IGI Global, 153--181.Google Scholar
- Dominic Tarr. 2016. Pull Streams. http://dominictarr.com/post/145135293917/history-of-streams. [Online; accessed 7-February-2017].Google Scholar
- Niklas Therning and Lars Bengtsson. 2005. Jalapeno: Decentralized Grid Computing Using Peer-to-peer Technology. In Proceedings of the 2Nd Conference on Computing Frontiers (CF '05). ACM, New York, NY, USA, 59--65. https://doi.org/10.1145/1062261.1062274Google ScholarDigital Library
- N. Tindall and A. Harwood. 2015. Peer-to-peer between browsers: cyclon protocol over WebRTC. In 2015 IEEE International Conference on Peer-to-Peer Computing (P2P). 1--5. https://doi.org/10.1109/P2P.2015.7328517Google ScholarCross Ref
- Peter Van-Roy and Seif Haridi. 2004. Concepts, Techniques, and Models of Computer Programming. MIT Press.Google Scholar
- C. Vogt, M. J. Werner, and T. C. Schmidt. 2013. Leveraging WebRTC for P2P content distribution in web browsers. In 2013 21st IEEE International Conference on Network Protocols (ICNP). 1--2. https://doi.org/10.1109/ICNP.2013.6733637Google ScholarCross Ref
- William W Wadge and Edward A Ashcroft. 1985. LUCID, the dataflow programming language. Vol. 303. Academic Press London.Google Scholar
- M. J. Werner, C. Vogt, and T. C. Schmidt. 2014. Let Our Browsers Socialize: Building User-Centric Content Communities on WebRTC. In 2014 IEEE 34th International Conference on Distributed Computing Systems Workshops (ICDCSW). 37--44. https://doi.org/10.1109/ICDCSW.2014.35Google Scholar
- Turner Whitted. 1980. An Improved Illumination Model for Shaded Display. Commun. ACM 23, 6 (June 1980), 343--349. https://doi.org/10.1145/358876.358882Google ScholarDigital Library
- Dany Wilson. 2015. Architecture for a Fully Decentralized Peer-to-Peer Collaborative Computing Platform. Ph.D. Dissertation. Université d'Ottawa/University of Ottawa. https://doi.org/10.20381/ruor-4170Google Scholar
- Shinichi Yamagiwa and Leonel Sousa. 2007. Design and implementation of a stream-based distributedcomputing platform using graphics processing units. In Proceedings of the 4th international conference on Computing frontiers. ACM, 197--204.Google ScholarDigital Library
Index Terms
- Pando: Personal Volunteer Computing in Browsers
Recommendations
The Next Generation Web: Technologies and Services
Big Data AnalyticsAbstractTim Berners-Lee, invented the World Wide Web (WWW) or Web in short in 1989. The Web became so popular that for many, it is synonymous with the Internet or simply the Net. There were many flavors of the original Web like Web 2.0, Web 3.0, etc. All ...
browsercloud.js: a distributed computing fabric powered by a P2P overlay network on top of the web platform
SAC '18: Proceedings of the 33rd Annual ACM Symposium on Applied ComputingGrid Computing fundamental basis is to use idle resources in order to maximize their efficiency. This approach quickly grew into non Grid environments, leveraging volunteered shared resources and giving the birth of Public Computing. Today, we face the ...
Interoperability of BOINC and EGEE
Today basically two types of grid systems are in use: service grids and desktop grids. Service grids offer an infrastructure for grid users, thus require notable management to keep the service running. On the other hand, desktop grids aim to utilize ...
Comments