-
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
Windows Caffe build with VS2010 and fail in the train stage #5570
Comments
It seems you haven't specify the solver to use or the name was not found in the list of available solvers. Actually according to the latest codes a list of solver names should be printed. It seems weird if your log is just finished at that point. Maybe updating your code could help you. Please also notice, I heard of Caffe is in transition to C++11, so I would recommend you to install a later version of VS, at least VS2013, if your employer allows you to do so. The building process can be much easier too. |
@PENGUINLIONG |
Yes, it might be MSVC's fault. The optimization strategy MSVC used to tackle with templates is sometimes troublesome. Because, according to my knowledge, it specialize templates when and only when a template is actually used. Some statically declared type could then fail to work properly. But it's sort of magic, and it seems not a really plausible explanation. Could you check if there are protobuf files generated?
Or other output/intermediate files presents. The message seems indicating the protobuf related files were not properly prepared. Please also check if other solvers are all invalid. |
the whole thing shown in the prompt is: |
I tried triggering the error with Yet I received this:
So it seems you are using a relatively old version of caffe. Please upgrade and use If you have to use your version of caffe, try |
@PENGUINLIONG |
Not so intuitive but yes. There are things couldn't be found in Caffe, which indicates your build of library was incomplete for some reason. And that reason might be caused by MSVC's lazy instantiation strategy. Maybe something tricky should be done to force some early versions of MSVC to instantiate templates. According to the issue you gave (#15 ), it might help if you remove the intermediate Try making a new |
Because of the way templates are instantiated in caffe we have to do some magic to force caffe.exe to link in all symbols which the linker would otherwise strip. Look for a file called include_symbols.hpp in your build directory. If this header file exist there must be some difference between VS2010 and 2013 or 2015. In that case you two options:
Closing as VS2010 is not supported. |
Deall all,
My problem happened in the train stage.
As I only have VS2010, so I didn't use the prebuild 3rd party library. I compiled the 3rd party from the very beginning.
The prompt is shown below.
solver_factory.cpp:29] check failed: registry.count ==1 <0 vs 1> Unknown solver type
Your system configuration
Operating system: Windows 7
Compiler: Visual studio 2010
CUDA version (if applicable): N.A.
CUDNN version (if applicable): N.A.
BLAS: OpenBLAS
Python or MATLAB version (for pycaffe and matcaffe respectively): Anaconda py2.7
The text was updated successfully, but these errors were encountered: