Comments (12)
Thanks for the detailed description.
This is caused by the same problem as discussed in issue #29. PocketFlow failed to use the GPU device due to the over-strict definition of "idle GPU" in utils/get_idle_gpus.py
. In that Python script, only GPUs without any running processes are defined as idle GPUs. This is often not the case, if the GPU is also used for desktop rendering.
We will fix this problem ASAP. Sorry for your trouble.
from pocketflow.
Enhancement required: change the way of detecting available GPUs.
from pocketflow.
@jiaxiang-wu Thanks for reply and explanation. And I realized that why the test passed on a machine with 4 GPUs and failed on this machine with one GPU. I will follow your update and test later.
from pocketflow.
@jiaxiang-wu In addition, I hope you could notice me after fixing the problem. Thanks.
from pocketflow.
@howtocodewang No problem. We will update this issue after the fix is done, and also send you an e-mail as notification.
from pocketflow.
Will be glad to send a PR fixing this. I would like to have a clarification on the new policy though.
What should be termed as an idle GPU? [Currently..a GPU with no processes running is defined as idle gpu in utils/get_idle_gpus.py
].
from pocketflow.
@KranthiGV In my opinion, an idle GPU which is defined by authors is a GPU with no any processes even as a display device. That means if you only have one GPU in your PC, your GPU will process some display tasks at the same time while you are running some GPU-based algorithm. In this situation, your GPU is not an idle GPU. So I encountered this issue on a PC with one GPU device but ran the demo successfully on a PC with 4 GPUs.
from pocketflow.
@howtocodewang Yes, you are right.
@KranthiGV How about a GPU with at least 50% GPU memory free? Or, if multiple GPUs are presented, return the GPU with the most free memory? What's your opinion?
from pocketflow.
- At least 50% free memory of GPU seems to be a good assumption since display processes won't take more than 50%. They usually take only a few hundreds of MB.
- It multiple GPUs are present, returning GPU with most free memory is not desirable. Currently, we return a list of GPUs (example
0,1,2,3
or0,1
, etc). Returning only the GPU with most free memory would prevent multi-GPU usage.
I'll go ahead with implementing 1st policy.
from pocketflow.
@KranthiGV Great, looking forward to your contribution.
from pocketflow.
@jiaxiang-wu
I cannot find dev branch to send the PR. There's only master.
Should I raise PR for master branch?
My fix is here: idle_gpu_fix
from pocketflow.
@KranthiGV
Yes, please raise a pull request to the master branch.
from pocketflow.
Related Issues (20)
- cifar10_channel pruned 的示例,通道剪枝(channel_pruning) 导出修改了计算图之后,速度比之前的更慢了! HOT 1
- Can the compression method provided by pocketflow be applied to MASK R-CNN? HOT 1
- QQ group HOT 1
- 我可以只用模型压缩部分么?
- TypeError: forward_train() missing 1 required positional argument: 'objects'
- Missing 1 required positional argument in constructor : data_format
- Download Pretrain Model But Get 502 Bad Gateway Error HOT 1
- You must feed a value for placeholder tensor 'model/input_1' with dtype float and shape [?,160,240,1]
- Question about export_chn_pruned_tflite_model.py HOT 1
- TF Version compatibility HOT 2
- Failed to create session
- Is it possible to compress the keras model with Pocket Flow
- Question about UniformLearner HOT 2
- Default tensorboard log output is huge
- FRCNN with VOC: Cannot batch tensors with different shapes in component 1.
- IndexError: list index out of range HOT 3
- Other issues:
- auto 通道裁剪问题
- test
- TF-Plus for Multi-GPU Training
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 pocketflow.