Giter Site home page Giter Site logo

Comments (10)

ricardodeazambuja avatar ricardodeazambuja commented on May 23, 2024

Just to clarify, headless does work using docker on my computer (NVIDIA Driver Version: 418.56), but I can't use docker on the server I have access to (NVIDIA Driver Version: 410.79).

from airsim-neurips2019-drone-racing.

ricardodeazambuja avatar ricardodeazambuja commented on May 23, 2024

Ok, using Singularity (singularity version 3.1.1+ds) and the SDL_VIDEODRIVER_VALUE=offscreen, it's almost working... at least it seems to be using it now:

[2019.07.22-19.42.41:073][  0]LogInit: Initializing SDL.
[2019.07.22-19.42.41:153][  0]LogInit: Initialized SDL 2.0.8 revision: 11184 (hg-12121:4358e537000a with EpicExtensions) (compiled against 2.0.8)
[2019.07.22-19.42.41:153][  0]LogInit: Using SDL video driver 'offscreen'
[2019.07.22-19.42.41:153][  0]LogInit: Display metrics:
[2019.07.22-19.42.41:153][  0]LogInit:   PrimaryDisplayWidth: 1024
[2019.07.22-19.42.41:153][  0]LogInit:   PrimaryDisplayHeight: 768
[2019.07.22-19.42.41:153][  0]LogInit:   PrimaryDisplayWorkAreaRect:
[2019.07.22-19.42.41:153][  0]LogInit:     Left=0, Top=0, Right=1024, Bottom=768
[2019.07.22-19.42.41:153][  0]LogInit:   VirtualDisplayRect:
[2019.07.22-19.42.41:153][  0]LogInit:     Left=0, Top=0, Right=1024, Bottom=768
[2019.07.22-19.42.41:153][  0]LogInit:   TitleSafePaddingSize: X=0.000 Y=0.000 Z=0.000 W=0.000
[2019.07.22-19.42.41:153][  0]LogInit:   ActionSafePaddingSize: X=0.000 Y=0.000 Z=0.000 W=0.000
[2019.07.22-19.42.41:153][  0]LogInit:   Number of monitors: 1
[2019.07.22-19.42.41:153][  0]LogInit:     Monitor 0
[2019.07.22-19.42.41:153][  0]LogInit:       Name: 0
[2019.07.22-19.42.41:153][  0]LogInit:       ID: display0
[2019.07.22-19.42.41:153][  0]LogInit:       NativeWidth: 1024
[2019.07.22-19.42.41:153][  0]LogInit:       NativeHeight: 768
[2019.07.22-19.42.41:153][  0]LogInit:       bIsPrimary: true

But it still fails:

[2019.07.22-19.42.42:429][  0]LogInit: Using SDL_WINDOW_OPENGL
Signal 11 caught.
Malloc Size=65538 LargeMemoryPoolOffset=65554 
CommonUnixCrashHandler: Signal=11
Malloc Size=65535 LargeMemoryPoolOffset=131119 
Malloc Size=52256 LargeMemoryPoolOffset=183392 
[2019.07.22-19.42.42:542][  0]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000000000000010

[2019.07.22-19.42.42:542][  0]LogCore: Fatal error!

from airsim-neurips2019-drone-racing.

StanislavSychev avatar StanislavSychev commented on May 23, 2024

I've run into the same problem and virtual screen setup helped me to overcome it.

from airsim-neurips2019-drone-racing.

madratman avatar madratman commented on May 23, 2024

Can you look at
https://github.com/microsoft/AirSim/blob/master/docs/docker_ubuntu.md#binaries
(ctrl+f "headless")

and the run binary linux script directly https://github.com/microsoft/AirSim/blob/master/docker/run_airsim_image_binary.sh
relevant snippets are

# this block is for running X apps in docker
XAUTH=/tmp/.docker.xauth
if [ ! -f $XAUTH ]
then
    xauth_list=$(xauth nlist :0 | sed -e 's/^..../ffff/')
    if [ ! -z "$xauth_list" ]
    then
        echo $xauth_list | xauth -f $XAUTH nmerge -
    else
        touch $XAUTH
    fi
    chmod a+r $XAUTH
fi

this thing

SDL_VIDEODRIVER_VALUE='';
while [ -n "$1" ]; do
    case "$1" in
    --)
        shift 
        break
        ;; 
    esac
    shift
done
 
for param in $@; do
    case "$param" in
    headless) SDL_VIDEODRIVER_VALUE='offscreen' ;;
    esac
done

just sets the value of the env variable to offscreen

from airsim-neurips2019-drone-racing.

madratman avatar madratman commented on May 23, 2024

-opengl3.. I would rather recommend using the -vulkan flag

Update
from 4.21, UE had moved to vulkan by default on linux. (https://www.phoronix.com/scan.php?page=news_item&px=Unreal-Engine-4.21-Debuts , https://www.reddit.com/r/linux_gaming/comments/8x0c78/unreal_engine_4_now_runs_with_vulkan_under_linux/)
Our binaries are cooked with UE 4.22.

I'd recommend trying the docker binary shell script with the headless param, minus the opengl tag

Please update if that works

from airsim-neurips2019-drone-racing.

ricardodeazambuja avatar ricardodeazambuja commented on May 23, 2024

@madratman, I'm trying to run it on Google Colaboratory so no docker, no tty, etc and that's why I tried singularity. On my laptop I managed to use docker to run airsim truly headless (without passing any display or volume with X11 stuff), but on google colab... I'm still trying :)

@stanislavsych, I tried to implement the solution you suggested, but I have problems with tty (there's no on google colab). I still need to try it maybe with singularity.

from airsim-neurips2019-drone-racing.

ugurkanates avatar ugurkanates commented on May 23, 2024

So what happened? please update on this issue

from airsim-neurips2019-drone-racing.

madratman avatar madratman commented on May 23, 2024

@ugurkanates did you read the docker docs and try dockerfiles linked above? If so, can you please tell us what failed?
Or are you trying to run this in google collab as well?

from airsim-neurips2019-drone-racing.

ugurkanates avatar ugurkanates commented on May 23, 2024

@ugurkanates did you read the docker docs and try dockerfiles linked above? If so, can you please tell us what failed?
Or are you trying to run this in google collab as well?

Yes @madratman , i am gonna run on google collab for most time and rent a cloud PC when i think its ok and see actual results. Would be lovely if you guys post a template for collab or fix tothe problem

from airsim-neurips2019-drone-racing.

madratman avatar madratman commented on May 23, 2024

I have added support for docker. See here https://github.com/microsoft/AirSim-NeurIPS2019-Drone-Racing#docker / #100

Closing this, as we don't have the bandwidth to support google collab.
If you figured this out, please update with your solution so others can benefit from it.

from airsim-neurips2019-drone-racing.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.