Giter Site home page Giter Site logo

minigan's Introduction

miniGAN

miniGAN is a generative adversarial network code developed as part of the Exascale Computing Project's (ECP) ExaLearn project at Sandia National Laboratories.

miniGAN v. 1.0.0

For questions, contact J. Austin Ellis ([email protected]) or Siva Rajamanickam ([email protected]).


Description:

miniGAN is a proxy application for generative adversarial networks.

The objective of the miniGAN miniapp is to model performance for training generator and discriminator networks. The GAN's generator and discriminator generate plausible 2D/3D maps and identify fake maps, respectively. Related applications exist in cosmology (CosmoGAN, ExaGAN) and wind energy (ExaWind).

Authors: J. Austin Ellis ([email protected]) and Siva Rajamanickam ([email protected])


Benchmarks:

Coming soon.


To Install:

Model/Package Combos

Pytorch Tested

  • python/3.5.2
  • pytorch/1.3.1
  • horovod/0.18.2

Install

  1. Enter desired pytorch directory and prepare python env
  • Run ./setup_python_env.sh
  • Run source ./minigan_torch_env/bin/activate (for pytorch)
  • (Run deactivate to exit python env)
  1. Generate bird dataset
  • Move to ${minigan_dir}/data
  • Run python generate_random_images.py --help for running options
  1. Run python3 minigan_driver.py --help for running options
  • Default dataset is "random". Switch to "--dataset bird" to use generated dataset.
  1. Run!

OLCF Summit instructions

  1. Do not run setup_python_env.sh, instead run module load ibm-wml-ce/1.7.0-1 to load IBM's Watson ML Community Edition.
    • This should contain PyTorch, Horovod, Matplotlib
    • Have not been successful with Summit's standalone pip / anaconda
  2. Obtain an interactive session using
    • bsub --nnodes 1 -Is -W 1:00 -P <ProjID> /bin/bash
  3. Run using
    • ddlrun python3 minigan_driver.py --dataset bird

Experimental!

Make use of kokkos-kernels layers/operations

  1. In development

Please report bugs or feature requests to: https://github.com/SandiaMLMiniApps/miniGAN/issues

License

miniGAN is licensed under standard 3-clause BSD terms of use. For specifics, please refer to the LICENSE file contained in the repository or distribution. Under the terms of Contract DE-NA0003525 with NTESS, the U.S. Government retains certain rights in this software.

minigan's People

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

johelli ellisja pprl

minigan's Issues

MPICH ERROR

Hello,

I have successfully run the ./setup_python_env.sh command and created the bird images. However, when I try to run the "python3 minigan_driver.py" I am getting the following error :

`MPICH ERROR [Rank 0] [job id ] [Wed Jan 31 12:03:12 2024] [nid200444] - Abort(-1) (rank 0 in comm 0): MPIDI_CRAY_init: GPU_SUPPORT_ENABLED is requested, but GTL library is not linked
 (Other MPI error)

aborting job:
MPIDI_CRAY_init: GPU_SUPPORT_ENABLED is requested, but GTL library is not linked

terminate called after throwing an instance of 'std::system_error'
  what():  Resource deadlock avoided
Aborted`

I am using Perlmutter's GPU node as a compute environment. Could you please help me navigate this problem?

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.