-
Notifications
You must be signed in to change notification settings - Fork 277
Support for multi-threaded run #967
Comments
I don't think this is true after reading @mrcslws 's discussion on numenta/nupic-legacy#3131 Also, @breznak, I don't want to describe implementation details in Github Issues. I think those should be discussed on the NuPIC Developer Forum and subsequent pull request(s). Each Github Issue should clearly define one proposal or feature, not the implementation. Please update this ticket to remove implementation details, and open the appropriate discussions in a new NuPIC Developer Forum topic. |
@rhyolight I don't have any opinion on the matter, but I was wondering what you might think of having references to implementation discussions from issues? |
Well, Marcus said the random code uncovered problematic/unoptimized code-paths, while the "well behaved" data benchmarks another paths. It's still trivial to see that the time would be reduced to
@rhyolight isn't the bureaucratic bar for contribution rising recently? What functionality would the issues have then? Are there many developers/reviewers who monitor a forum and not a GH issues/PRs? |
@breznak I've been advocating for this approach of splitting up features and implementation for years now. Here's a message from April 2014:
Not trying to add bureaucracy, but the simple truth is that we don't have the manpower to keep up with you. Keeping issues extremely lean and clean helps. Keeping details about the implementation out of the feature / problem description decreases the cognitive dissonance involved in understanding the issue. @breznak said:
Issues get very hard to follow when there is a large amount of discussion about implementation details on them. The larger an issue gets, the harder it is to grok it. The less likely it is that another contributor will bother to read through it. I like the idea of trying to keep Github Issues as tidy as possible, discussing the messy details on the forum. Maybe that's not the right way to do things, but I'm not happy with how slowly things are moving with your issues and PRs today, so what else can I do but try something new? I am the project manager, not a core developer on this project. I usually can't validate issues and review PRs, and I can't force reviewers to discuss issues and review PRs. I'm still trying to make issues and PRs more approachable. Let me know if you have any other ideas. @cogmission said:
Sure, fine with me. |
@breznak I don't want to continue this conversation here on Github. Let's continue it on HTM Forum. |
We will continue discussion of this issue here until it is better-defined: https://discourse.numenta.org/t/multi-threading-optimization-in-nupic/524. |
The full pipeline is
Encoder -> SP -> TM -> Classifier/Anomaly
, but the SP,TM are the most computationally intensive routines.Therefore the proposed simple optimization would halve the time of practical HTM applications.
Requirement:
spOutput
variable, which is then input to TMImplementation:
Threads
are new feature of C++11: https://solarianprogrammer.com/2011/12/16/cpp-11-thread-tutorial/The text was updated successfully, but these errors were encountered: