view TaskManager/Cell/spe/main.cc @ 364:87462f8d3761

uint32 to memaddr(uint64)
author tkaito@localhost.localdomain
date Fri, 24 Jul 2009 17:40:53 +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;
}