-
Notifications
You must be signed in to change notification settings - Fork 18.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Confusion between the --gpu flag and solverproto #925
Comments
(Thanks @yosinski for raising this in caffe-users!) |
Oh, my intention was to override the solver configuration when the --gpu On Wednesday, August 13, 2014, Yangqing Jia [email protected]
Evan Shelhamer |
yeah, the code is not there yet, although it is trivial to do - we just need to change the train() function so that the solver mode and gpu are rewritten. In fact, I am thinking of marking the two solver flags as deprecated: https://developers.google.com/protocol-buffers/docs/proto#options so that we solely rely on the runtime to determine the mode rather than specifying things in the solver. |
Yeah, I'm in favor of mode and device being specified on the command line only -- I was just irritated by this, and it's nice to have the solver prototxt be simply "the parameters needed for training", which are independent of device. |
@longjon +1 |
I would prefer to keep device_id in prototxt and overwrite if needed, since Sergio 2014-08-14 8:30 GMT+02:00 Jason Yosinski [email protected]:
|
@sguada I agree we need a
in a prototxt would mean the first |
If I may be so bold - I would actually vote against having device_id in the layer definition. The reason is probably the same as that for removing the device_id in the solver proto: device_id is really a scheduling thing and not a mathematical thing, so we probably should have the layers proto defining the network architecture, the solver proto defining the solver math, and a separate way (either in the form of commandline arguments, or a third (oh my) proto) defining how training should be carried out on device (including multi GPUs). In this way we hopefully won't mix things up at multiple places :) |
@Yangqing sure, I think we agree in spirit that the architecture and I like your proposal for keeping it distinct, but it, but it may grow Details, details... On Thursday, August 14, 2014, Yangqing Jia [email protected] wrote:
|
Fixed by command line override in #961. |
Currently in tools/caffe we can use --gpu to specify GPUs. However, during training, this flag is not used and instead the gpu id in the solver protobuffer is used. This might be quite confusing to the user and we should probably consider moving the training mode and training gpu id options outside the solver prototxt, or overriding it with the commandline option.
The text was updated successfully, but these errors were encountered: