Don't modify index in im2col kernel loop
Don't modify data pointers in im2col loop
Add comment for how to set the CUDA path when cuda tools are installed by the package manager.
in Caffe::SetDevice, call cudaSetDevice before Get

Otherwise initialization will be performed on whichever device is
default.
Merge pull request #507 from longjon/set-device-early

Fix Caffe::SetDevice to avoid initializing on default device
Merge pull request #504 from leelurch/Config-Example-Ubuntu14.04

Add comment for how to set the CUDA path when cuda tools are installed b...
Set device_id at the begining of Solver.Init() to avoid using memory in the default GPU
Now Loss layers would return the loss in the top blob if requested
Modified test_net to check loss layer with top
Merge pull request #521 from sguada/set_device_id_at_init

Set device_id at the beginning of Solver.Init()
remove erroneous comment in ArgMaxLayer
Fix the condition prefetch_needs_rand in the ImageDataLayer
Initialize the RNG generator with an orthogonally newed Generator
Extract GPU code out of SyncedMemoryTest::TestCPUWrite
Separate TestForward into Test{CPU, GPU}Forward in HDF5OutputLayerTest
Suppress redundant log messages of unavailable curand
Revert the namespace ending comment to the same line of the bracket
Rename curand_availability_logged according to the Google style guide
Verify the result of memtest in SyncedMemoryTest::TestGPURead
Merge HingeLoss and L2HingeLoss by adding hinge_norm to params

Conflicts:
	src/caffe/layers/loss_layer.cpp
	src/caffe/proto/caffe.proto
	src/caffe/test/test_l2_hinge_loss_layer.cpp