view TaskManager/Cell/spe/main.cc @ 319:ec01eee01fd8

light
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 10 Jun 2009 15:09:57 +0900
parents 8382f0f8c0b4
children 0decff4e867b
line wrap: on
line source

#include <stdio.h>
#include "CellScheduler.h"
#include "spu_mfcio.h"
#include "error.h"

extern unsigned char _end[];

int
main(unsigned long long speid,
     unsigned long long argc, unsigned long long argv)
{
    CellScheduler *manager;

    //const unsigned ls_size   = (unsigned)&argc;
    //unsigned code_size = (unsigned)&_end;
    //unsigned heap_size = ls_size - code_size;

    __debug("  ls_size:%10d bytes\n", ls_size);
    __debug("code_size:%10d bytes\n", code_size);
    __debug("heap_size:%10d bytes\n", heap_size);

    manager = new CellScheduler();
    manager->init();
    manager->id = (int)argc;

    spu_write_decrementer(0x7FFFFFFFU);
    unsigned int prof = spu_read_decrementer();
    manager->run();

    prof -= spu_read_decrementer();

    //printf("%f\n", prof/79800000.0f*1000.0f);
    
    manager->finish();

    return 0;
}