How to make and install the image of my own Ubuntu 16.04 installation with Docker on

Discussion in 'Desktop Operation' started by marietto, Mar 24, 2020.

Tags:
  1. marietto

    marietto New Member

    Hello.

    I'm going to hire some space on a remote linux workstation equipped with a Geforce GTX 1080 ti because I want to run there this deep learning repository :

    https://github.com/CMU-Perceptual-Computing-Lab/MonocularTotalCapture

    It requires Ubuntu 16.04 and Cuda 9 to run and my graphic card (Geforce RTX 2080 ti) does not support it. I have also another computer with a Geforce 1060. I have installed the repo on that computer,but when I run it It always give this error to me :

    Code:
    ./openpose/build/examples/openpose/openpose.bin --face --hand --image_dir ./example_dance/raw_image --write_json example_dance/openpose_result --render_pose 0 --display 0 -model_pose BODY_25 -
    
    Starting OpenPose demo...Configuring OpenPose...Starting thread(s)...Auto-detecting all available GPUs... Detected 1 GPU(s), using 1 of them starting at GPU 0.F0322 22:31:40.377177 10803 syncedmem.cpp:71] Check failed: error == cudaSuccess (2 vs. 0)  out of memory
    
    *** Check failure stack trace: ***    @     0x7f9f2800e5cd  google::LogMessage::Fail()    @    
    I suppose that that PC is not enough powerful to run the repository. I've contacted this company :

    https://www.leadergpu.com/

    they told me that I should "install my image to our server using docker container". They also say that they haven't a specific tutorial that I can follow to learn how to do that. Since I'm not a pro,I'm an hobbyst,I'm here to ask if someone has some specific tutorial to do what I want.

    I've already been able to make work the Monocular Total Capture repository. But I'm not able to repeat all the steps because I've been lucky. I gone through trial and errors. For this reason I want to clone my existing ubuntu installation and make a docker image of everything that's inside of it
     
    Last edited: Mar 24, 2020
  2. Taleman

    Taleman Well-Known Member HowtoForge Supporter

    The computer does not have enough memory. Put more RAM or add swap partition, both should fix this out of memory.
    I am a bit surprised that GTX 1080 has some features that neither GTX 1060 nor RTX 2080 have.
     
  3. marietto

    marietto New Member

    what should have more memory ? the GPU (1060 with 3 Gb or memory) or my PC (16 GB) with 8 GB of swap ? I suspect that the memory that it looks is related to the GPU. More generally I think that the 1060 is not enough powerful. For this reason I want to try this repo on a remote GTX 1080 ti. But first of all I need to find the way to make the docker cloned image of my linux installation. I suspect that adding more RAM to the PC will be not enough. The repo has been tested with a 1080 ti. Regarding the 2080 ti,it does not support CUDA 9,so it's useless.
     
  4. Taleman

    Taleman Well-Known Member HowtoForge Supporter

    is usually the Out of Memory situation. I do not know what kind of test your out of memory comes from, so it may be something else. You should know what the test you are running is testing.
    I have cloned physical hosts to virtual machines using Clonezilla to image the disk partition and importing that to Proxmox virtual host. Maybe similar approch works for docker?
     
  5. marietto

    marietto New Member

    it comes from here :

    ./openpose/build/examples/openpose/openpose.bin --face --hand --image_dir ./example_dance/raw_image --write_json example_dance/openpose_result --render_pose 0 --display 0 -model_pose BODY_25 -

    Starting OpenPose demo...
    Configuring OpenPose...
    Starting thread(s)...
    Auto-detecting all available GPUs... Detected 1 GPU(s), using 1 of them starting at GPU 0.
    F0322 22:31:40.377177 10803 syncedmem.cpp:71] Check failed: error == cudaSuccess (2 vs. 0) out of memory
    *** Check failure stack trace: ***
    @ 0x7f9f2800e5cd google::LogMessage::Fail()
    @ 0x7f9f28010433 google::LogMessage::SendToLog()
    @ 0x7f9f2800e15b google::LogMessage::Flush()
    @ 0x7f9f28010e1e google::LogMessageFatal::~LogMessageFatal()
    @ 0x7f9f279c5e68 caffe::SyncedMemory::mutable_gpu_data()
    @ 0x7f9f27a1d5d2 caffe::Blob<>::mutable_gpu_data()
    @ 0x7f9f27b9520d caffe::pReLULayer<>::Forward_gpu()
    @ 0x7f9f279dc441 caffe::Net<>::ForwardFromTo()
    @ 0x7f9f295e2621 op::NetCaffe::forwardPass()
    @ 0x7f9f2963c09a op::poseExtractorCaffe::forwardPass()
    @ 0x7f9f296363f5 op::poseExtractor::forwardPass()
    @ 0x7f9f2963352e op::WPoseExtractor<>::work()
    @ 0x7f9f2968afd9 op::Worker<>::checkAndWork()
    @ 0x7f9f2968b17b op::SubThread<>::workTWorkers()
    @ 0x7f9f29693b1b op::SubThreadQueueInOut<>::work()
    @ 0x7f9f2968df2b op::Thread<>::threadFunction()
    @ 0x7f9f28ef3c80 (unknown)
    @ 0x7f9f286456ba start_thread
    @ 0x7f9f2896241d clone
    @ (nil) (unknown)
    Annullato (core dump creato)

    I don't know. I never used docker. Someone told me "As far as I know you can't clone an ubuntu installation into a docker image. The point of Docker is to make a process repeatable and consistent. I built a modded minecraft image and it took me a couple of days troubleshooting wise to get it working. You troubleshoot it the same way, it's just in a docker container. You find an issue, figure out a solution, stop the container, change the dockerfile, rebuild the image from your updated dockerfile, start up the container and see what else breaks"
     

Share This Page