Sistemas gerenciadores de recursos (Resource Management Systems - RMS) são responsáveis por gerir a submissão de "jobs" de utilizador. Um RMS é responsável por (1) receber um "job" com uma determinada especificação, (2) colocar o "job" numa fila de espera, e (3) planear a melhor forma de executar estes "jobs", alocando recursos da "melhor" forma possível, de acordo com as especificações fornecidas pelo utilizador em um ficheiro de descrição da aplicação ou na interface (API, gráfica ou linha de comando). O RMS atua, desta forma, acima do escalonador do sistema de operação. A principal vantagem de se utilizar um RMS é poder organizar a execução de muitos "jobs", que podem pertencer a vários utilizadores, de forma a satisfazer as restrições de cada um, utilizando os recursos de forma eficiente. Vários RMS estão disponíveis. Por exemplo: Condor, SGE (Sun Grid Engine), PBS, Torque, LSF, Load Leveler, dentre outros. Neste trabalho, você deve escolher um destes RMS, fazer a instalação na sua máquina, configurá-lo (por exemplo, escolher o esquema de filas e suas prioridades) e testar a sua instalação e configuração submetendo algumas aplicações. Exemplos de requisitos para a aplicação a ser testada:

  • seu programa deve demorar no máximo 1 hora para correr
  • seu programa deve correr utilizando 2 nodes, cada um com 2 cpus
  • seu programa deve correr utilizando exatamente 4 cpus, não importando onde estes estão localizados (multicore ou distribuídos)
  • seu programa deve redirecionar toda a saída padrão para o ficheiro out.txt
  • seu programa é paralelo e utiliza uma biblioteca MPI
  • seu programa utiliza muita memória (pe, 16GBytes)
  • você está interessado em correr seu programa de forma interativa, utilizando 2 cpus, durante meia hora
  • O que deve entregar:

  • Relatório contendo respostas às seguintes questões:

    Data de entrega: 31 de Março de 2011.