Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6613807
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T20:15:44+00:00 2026-05-25T20:15:44+00:00

Background I’m a bit new to developing and had a general python/programming question. If

  • 0

Background

I’m a bit new to developing and had a general python/programming question. If you have a method that is a recursion, what is involved to enabling multiple threads or multiprocessing? I’ve done some light reading and a few examples but they seem to be applying the syntax for new code(and not very cpu intensive tasks), I’m more wondering how do I re-design existing code to do this?

Say I have something thats cpu intensive(basically keeps adding to itself until limit is hit):

def adderExample(sum, number):
    if sum > 1000:
        print 'sum is larger than 10. Stoping'
    else:
        sum = sum + number
        print sum
        number = number + 1
        adderExample(sum, number)


adderExample(0,0)

Question(s)/Though process

How would I approach this to make it run faster assuming I have multiple cores available(I want it to eventually want it span machines but I think thats a sperate issue with hadoop so I’ll keep this example to only one system with multiple cpu’s)? It seems threading it isn’t the best choice(because of the time it takes to spawn new threads), if thats true should I only focus on multiprocessing? If so, can recursions be split to different cpu’s(vai queues I assume and then rejoin after its done)? Can I create multiple threads for each process than split those processes over multiple cpu’s? Lastly, is recursion depth limits an overall limit or is it based on threads/proceses, if so does multiprocessing/threading get around it?

Another question(related) how do those guys trying to codes(rsa, wireless keys,etc) via brute force overcome this problem? I assume they are scaling their mathematical processes over multiple cpu somehow. This or any example to build my understanding would be great.

Any tips/suggestions would be great

Thanks!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-25T20:15:45+00:00Added an answer on May 25, 2026 at 8:15 pm

    Such a loop wouldn’t benefit much at all from threading. Consider that you’re doing a series of additions, whose intermediate values depend on the previous iterations. This can’t be parallelized, because the threads would be stomping on each other’s values and overwriting things. You can lock the data so only one thread works on it at a time, but then you lose any benefit of having multiple threads working on that data.

    Threads work best when they have independent data sets. e.g. a graphics renderer is a perfect example. Each thread renders a subset of the larger image – they may share common data sources for texture/vertex/color/etc… data, but each thread has its own little section of the total image to work one, and doesn’t touch other areas of the image. Whatever thread #1 does on its little section of pixels won’t affect what thread #2 is doing elsewhere in the image.

    For your related question, password cracking is another example where threading/multiprocessing makes sense. Each thread goes off on its own testing multiple possible passwords against one common “to be cracked” list. What one thread is doing doesn’t affect any of the other cracker threads, unless you get a match, which may mean all threads abort since the job is “done”.

    Once threads become interdependent on each other, you lose a lot of the benefits of having multiple threads. They’ll spend more time waiting for the other to finish than they’ll spend on doing actual work. Of course, this doesn’t say you should never use threads. Sometimes it does makes sense to have multiple threads, even if they are interdependent. E.g. a graphics thread + sound effects thread + action processor thread + A.I. calculations thread, etc… in a game. each one is nominally dependent on each other, but while the sound thread is busy generating the bang+ricochet audio for the gun the player just shot, the a.i. thread is off calculating what the game’s mobs are doing, the graphics thread is drawing some clouds in the background, etc…

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Background: At my company we are developing a bunch applications that are using the
Background: I have a website that has been built with ASP.NET 2.0 and is
Background I have a web app that will create an image from user input.
Background: I have a MainTest class that has many buttons, each of which instantiate
Background: I'm new to CakePHP. I have a small test site (mostly composted of
Background I am developing an application for android in eclipse and now I have
Background: I have a little video playing app with a UI inspired by the
Background I have a massive db for a SharePoint site collection. It is 130GB
Background I am trying to create a copy of a business object I have
Background I have been asked by a client to create a picture of the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.