Comments (2)
In general I wouldn't recommend using num-threads more than available hardware threads, that will only slow the mapper down. It's best to keep it un-set, in which case Timeloop will probe the number of available hardware threads and fork that many mapper threads. However, if you are trying to diagnose/debug the mapper's behavior then of course you can use the parameter.
To answer your specific question - when the mapper creates a certain number of threads, it partitions the mapspace among the threads. Due to the nature of the RNG it's hard to deterministically determine which specific mapping each thread will decide to visit. Therefore, you may see situations where a larger number of threads are behaving unexpectedly because they got unlucky and happened to visit a number of bad mappings. Could you please expand the timeout even further and see if it helps?
from timeloop.
Got it. I will let the mapper use the available nb of threads automatically then.
As you said, looks like the 16 threads version got lucky and visited the good mapping very early. I increased the timeout by 100x and the 8/2 threads were able to find the same solution. Thanks for the insights.
from timeloop.
Related Issues (20)
- skipping at a compute target?
- More operands for problem.yaml HOT 4
- Architecture Specification changes HOT 14
- Problem in getting optimal dataflow HOT 10
- Mapspace search Bug
- Checks for unknown dataspace & unknown dimension in Model
- Timeloop mapper constraint output HOT 3
- Problem in parsing DRAM energy
- Ruby >32GB memory usage, out of memory HOT 11
- Cutlass permutation is KMN? HOT 1
- The register in timeloop is accessible to all PEs, right? HOT 1
- What is updated in v4 version? HOT 1
- error when I do "make install_timeloop" HOT 6
- Maximizing PE array utilization in convolution runs HOT 1
- Loopnest specification HOT 1
- Running multiple instances of Timeloop in parallel HOT 5
- Overall latency estimation HOT 1
- Modeling SIMD architectures
- Modelling of Batch Matrix Multiplication HOT 3
- Data layout
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from timeloop.