Combine 2 Raspberry Pi 3












2















Can i somehow combine 2 Pi's so i have a better CPU speed? I'm new to this so a link to some tutorials (if possible) would be nice



I know you can create a cluster for a database so you can scale it, but is this possible for the whole system?



Thanks!










share|improve this question



























    2















    Can i somehow combine 2 Pi's so i have a better CPU speed? I'm new to this so a link to some tutorials (if possible) would be nice



    I know you can create a cluster for a database so you can scale it, but is this possible for the whole system?



    Thanks!










    share|improve this question

























      2












      2








      2








      Can i somehow combine 2 Pi's so i have a better CPU speed? I'm new to this so a link to some tutorials (if possible) would be nice



      I know you can create a cluster for a database so you can scale it, but is this possible for the whole system?



      Thanks!










      share|improve this question














      Can i somehow combine 2 Pi's so i have a better CPU speed? I'm new to this so a link to some tutorials (if possible) would be nice



      I know you can create a cluster for a database so you can scale it, but is this possible for the whole system?



      Thanks!







      cluster






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jan 13 at 14:35









      Sp3ct4cul4rSp3ct4cul4r

      111




      111






















          3 Answers
          3






          active

          oldest

          votes


















          5














          No you can't combine 2 Pi's to have better CPU speed. Any software designed for a cluster must be specifically written to do so.



          If you haven't already I suggest buying a Pi3B+, it is noticeably quicker than a Pi3B.






          share|improve this answer































            2














            It can be a common misconception that you can sort of just bootstrap machines together and get greater performance. Sadly when it comes to building clusters, especially of raspberry pi's the use cases become pretty niche, and limited. This is the kind of thing that you would be building. While making one of these can yield better performance, it can only do so when applied to certain problems, and even then, you wouldn't see an immediate increase in speed or anything. Having a cluster really just allows for you to divvy up computation to a greater amount of cores. Code that you want to run on said cluster would have to be written specifically to be parallelized, and run on multiple machines using some kind of framework, the most popular being MPI (Message Passing Interface).



            Raspberry Pi's are not the ideal candidates for these kind of clusters either. On top of not having great performance to begin with, you would would be getting tremendous bottlenecks as a result of slow IO (depending on which version of the RPI). That isn't to say you shouldn't build a cluster if you wanted to, they can be a great learning experience and a lot of fun to mess around with, just know if you are looking for performance improvements you might consider looking else where.






            share|improve this answer































              1














              You'll never achieve a better per-process performance - you can't double the clock speed of a single Raspberry Pi in that way.



              Depending on the software that you want to run, you can create a cluster of Pi's which communicate with each other (probably via the Ethernet interface) to run certain tasks, and these tasks can then be run in parallel on every node in the cluster. In other words: you can achieve horizontal scalability (more nodes in a cluster), not vertical scalability (a single node can never be made faster).



              Google around for 'Docker Swarm on a Raspberry Pi Cluster' for example, there are numerous examples and projects out there. Docker is a piece of software that allows you to run containers (small 'virtualized' applications), any piece of software that is containerized in a Docker image (see www.docker.com and this article) can then be run either on a single Pi, or in a redundant fashion on a cluster of Pi's.



              Note: I completely agree with @drewrip's answer: Raspberry Pi's are not the ideal platform for this - they have some limitations which you must be aware of. You can read about some of the drawbacks (w.r.t. the OS, the flash drive, power management etc.) here.






              share|improve this answer








              New contributor




              pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
              Check out our Code of Conduct.




















                Your Answer






                StackExchange.ifUsing("editor", function () {
                return StackExchange.using("schematics", function () {
                StackExchange.schematics.init();
                });
                }, "cicuitlab");

                StackExchange.ready(function() {
                var channelOptions = {
                tags: "".split(" "),
                id: "447"
                };
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function() {
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled) {
                StackExchange.using("snippets", function() {
                createEditor();
                });
                }
                else {
                createEditor();
                }
                });

                function createEditor() {
                StackExchange.prepareEditor({
                heartbeatType: 'answer',
                autoActivateHeartbeat: false,
                convertImagesToLinks: false,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: null,
                bindNavPrevention: true,
                postfix: "",
                imageUploader: {
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                },
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                });


                }
                });














                draft saved

                draft discarded


















                StackExchange.ready(
                function () {
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fraspberrypi.stackexchange.com%2fquestions%2f93020%2fcombine-2-raspberry-pi-3%23new-answer', 'question_page');
                }
                );

                Post as a guest















                Required, but never shown

























                3 Answers
                3






                active

                oldest

                votes








                3 Answers
                3






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                5














                No you can't combine 2 Pi's to have better CPU speed. Any software designed for a cluster must be specifically written to do so.



                If you haven't already I suggest buying a Pi3B+, it is noticeably quicker than a Pi3B.






                share|improve this answer




























                  5














                  No you can't combine 2 Pi's to have better CPU speed. Any software designed for a cluster must be specifically written to do so.



                  If you haven't already I suggest buying a Pi3B+, it is noticeably quicker than a Pi3B.






                  share|improve this answer


























                    5












                    5








                    5







                    No you can't combine 2 Pi's to have better CPU speed. Any software designed for a cluster must be specifically written to do so.



                    If you haven't already I suggest buying a Pi3B+, it is noticeably quicker than a Pi3B.






                    share|improve this answer













                    No you can't combine 2 Pi's to have better CPU speed. Any software designed for a cluster must be specifically written to do so.



                    If you haven't already I suggest buying a Pi3B+, it is noticeably quicker than a Pi3B.







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Jan 13 at 14:46









                    CoderMikeCoderMike

                    2,2991412




                    2,2991412

























                        2














                        It can be a common misconception that you can sort of just bootstrap machines together and get greater performance. Sadly when it comes to building clusters, especially of raspberry pi's the use cases become pretty niche, and limited. This is the kind of thing that you would be building. While making one of these can yield better performance, it can only do so when applied to certain problems, and even then, you wouldn't see an immediate increase in speed or anything. Having a cluster really just allows for you to divvy up computation to a greater amount of cores. Code that you want to run on said cluster would have to be written specifically to be parallelized, and run on multiple machines using some kind of framework, the most popular being MPI (Message Passing Interface).



                        Raspberry Pi's are not the ideal candidates for these kind of clusters either. On top of not having great performance to begin with, you would would be getting tremendous bottlenecks as a result of slow IO (depending on which version of the RPI). That isn't to say you shouldn't build a cluster if you wanted to, they can be a great learning experience and a lot of fun to mess around with, just know if you are looking for performance improvements you might consider looking else where.






                        share|improve this answer




























                          2














                          It can be a common misconception that you can sort of just bootstrap machines together and get greater performance. Sadly when it comes to building clusters, especially of raspberry pi's the use cases become pretty niche, and limited. This is the kind of thing that you would be building. While making one of these can yield better performance, it can only do so when applied to certain problems, and even then, you wouldn't see an immediate increase in speed or anything. Having a cluster really just allows for you to divvy up computation to a greater amount of cores. Code that you want to run on said cluster would have to be written specifically to be parallelized, and run on multiple machines using some kind of framework, the most popular being MPI (Message Passing Interface).



                          Raspberry Pi's are not the ideal candidates for these kind of clusters either. On top of not having great performance to begin with, you would would be getting tremendous bottlenecks as a result of slow IO (depending on which version of the RPI). That isn't to say you shouldn't build a cluster if you wanted to, they can be a great learning experience and a lot of fun to mess around with, just know if you are looking for performance improvements you might consider looking else where.






                          share|improve this answer


























                            2












                            2








                            2







                            It can be a common misconception that you can sort of just bootstrap machines together and get greater performance. Sadly when it comes to building clusters, especially of raspberry pi's the use cases become pretty niche, and limited. This is the kind of thing that you would be building. While making one of these can yield better performance, it can only do so when applied to certain problems, and even then, you wouldn't see an immediate increase in speed or anything. Having a cluster really just allows for you to divvy up computation to a greater amount of cores. Code that you want to run on said cluster would have to be written specifically to be parallelized, and run on multiple machines using some kind of framework, the most popular being MPI (Message Passing Interface).



                            Raspberry Pi's are not the ideal candidates for these kind of clusters either. On top of not having great performance to begin with, you would would be getting tremendous bottlenecks as a result of slow IO (depending on which version of the RPI). That isn't to say you shouldn't build a cluster if you wanted to, they can be a great learning experience and a lot of fun to mess around with, just know if you are looking for performance improvements you might consider looking else where.






                            share|improve this answer













                            It can be a common misconception that you can sort of just bootstrap machines together and get greater performance. Sadly when it comes to building clusters, especially of raspberry pi's the use cases become pretty niche, and limited. This is the kind of thing that you would be building. While making one of these can yield better performance, it can only do so when applied to certain problems, and even then, you wouldn't see an immediate increase in speed or anything. Having a cluster really just allows for you to divvy up computation to a greater amount of cores. Code that you want to run on said cluster would have to be written specifically to be parallelized, and run on multiple machines using some kind of framework, the most popular being MPI (Message Passing Interface).



                            Raspberry Pi's are not the ideal candidates for these kind of clusters either. On top of not having great performance to begin with, you would would be getting tremendous bottlenecks as a result of slow IO (depending on which version of the RPI). That isn't to say you shouldn't build a cluster if you wanted to, they can be a great learning experience and a lot of fun to mess around with, just know if you are looking for performance improvements you might consider looking else where.







                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered Jan 13 at 23:31









                            drewripdrewrip

                            211




                            211























                                1














                                You'll never achieve a better per-process performance - you can't double the clock speed of a single Raspberry Pi in that way.



                                Depending on the software that you want to run, you can create a cluster of Pi's which communicate with each other (probably via the Ethernet interface) to run certain tasks, and these tasks can then be run in parallel on every node in the cluster. In other words: you can achieve horizontal scalability (more nodes in a cluster), not vertical scalability (a single node can never be made faster).



                                Google around for 'Docker Swarm on a Raspberry Pi Cluster' for example, there are numerous examples and projects out there. Docker is a piece of software that allows you to run containers (small 'virtualized' applications), any piece of software that is containerized in a Docker image (see www.docker.com and this article) can then be run either on a single Pi, or in a redundant fashion on a cluster of Pi's.



                                Note: I completely agree with @drewrip's answer: Raspberry Pi's are not the ideal platform for this - they have some limitations which you must be aware of. You can read about some of the drawbacks (w.r.t. the OS, the flash drive, power management etc.) here.






                                share|improve this answer








                                New contributor




                                pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                Check out our Code of Conduct.

























                                  1














                                  You'll never achieve a better per-process performance - you can't double the clock speed of a single Raspberry Pi in that way.



                                  Depending on the software that you want to run, you can create a cluster of Pi's which communicate with each other (probably via the Ethernet interface) to run certain tasks, and these tasks can then be run in parallel on every node in the cluster. In other words: you can achieve horizontal scalability (more nodes in a cluster), not vertical scalability (a single node can never be made faster).



                                  Google around for 'Docker Swarm on a Raspberry Pi Cluster' for example, there are numerous examples and projects out there. Docker is a piece of software that allows you to run containers (small 'virtualized' applications), any piece of software that is containerized in a Docker image (see www.docker.com and this article) can then be run either on a single Pi, or in a redundant fashion on a cluster of Pi's.



                                  Note: I completely agree with @drewrip's answer: Raspberry Pi's are not the ideal platform for this - they have some limitations which you must be aware of. You can read about some of the drawbacks (w.r.t. the OS, the flash drive, power management etc.) here.






                                  share|improve this answer








                                  New contributor




                                  pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                  Check out our Code of Conduct.























                                    1












                                    1








                                    1







                                    You'll never achieve a better per-process performance - you can't double the clock speed of a single Raspberry Pi in that way.



                                    Depending on the software that you want to run, you can create a cluster of Pi's which communicate with each other (probably via the Ethernet interface) to run certain tasks, and these tasks can then be run in parallel on every node in the cluster. In other words: you can achieve horizontal scalability (more nodes in a cluster), not vertical scalability (a single node can never be made faster).



                                    Google around for 'Docker Swarm on a Raspberry Pi Cluster' for example, there are numerous examples and projects out there. Docker is a piece of software that allows you to run containers (small 'virtualized' applications), any piece of software that is containerized in a Docker image (see www.docker.com and this article) can then be run either on a single Pi, or in a redundant fashion on a cluster of Pi's.



                                    Note: I completely agree with @drewrip's answer: Raspberry Pi's are not the ideal platform for this - they have some limitations which you must be aware of. You can read about some of the drawbacks (w.r.t. the OS, the flash drive, power management etc.) here.






                                    share|improve this answer








                                    New contributor




                                    pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.










                                    You'll never achieve a better per-process performance - you can't double the clock speed of a single Raspberry Pi in that way.



                                    Depending on the software that you want to run, you can create a cluster of Pi's which communicate with each other (probably via the Ethernet interface) to run certain tasks, and these tasks can then be run in parallel on every node in the cluster. In other words: you can achieve horizontal scalability (more nodes in a cluster), not vertical scalability (a single node can never be made faster).



                                    Google around for 'Docker Swarm on a Raspberry Pi Cluster' for example, there are numerous examples and projects out there. Docker is a piece of software that allows you to run containers (small 'virtualized' applications), any piece of software that is containerized in a Docker image (see www.docker.com and this article) can then be run either on a single Pi, or in a redundant fashion on a cluster of Pi's.



                                    Note: I completely agree with @drewrip's answer: Raspberry Pi's are not the ideal platform for this - they have some limitations which you must be aware of. You can read about some of the drawbacks (w.r.t. the OS, the flash drive, power management etc.) here.







                                    share|improve this answer








                                    New contributor




                                    pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.









                                    share|improve this answer



                                    share|improve this answer






                                    New contributor




                                    pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.









                                    answered Feb 8 at 10:43









                                    pietervanwijngaardenpietervanwijngaarden

                                    516




                                    516




                                    New contributor




                                    pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.





                                    New contributor





                                    pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.






                                    pietervanwijngaarden is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                                    Check out our Code of Conduct.






























                                        draft saved

                                        draft discarded




















































                                        Thanks for contributing an answer to Raspberry Pi Stack Exchange!


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid



                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.


                                        To learn more, see our tips on writing great answers.




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function () {
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fraspberrypi.stackexchange.com%2fquestions%2f93020%2fcombine-2-raspberry-pi-3%23new-answer', 'question_page');
                                        }
                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown







                                        Popular posts from this blog

                                        MongoDB - Not Authorized To Execute Command

                                        in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith

                                        Npm cannot find a required file even through it is in the searched directory