Changeset 422


Ignore:
Timestamp:
Sep 30, 2014, 5:30:47 PM (10 years ago)
Author:
cfuguet
Message:

sort: using big pages for code segment

Location:
soft/giet_vm/sort
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/sort/main.c

    r381 r422  
    3030#include "barrier.h"
    3131
    32 #define ARRAY_LENGTH    512
     32#define ARRAY_LENGTH    4096
    3333#define IPT             (ARRAY_LENGTH / *nb_thread) // ITEMS PER THREAD
    3434
  • soft/giet_vm/sort/sort.py

    r416 r422  
    3333    # define vsegs base & size
    3434    code_base  = 0x10000000
    35     code_size  = 0x00010000     # 64 Kbytes (replicated in each cluster)
     35    code_size  = 0x00200000     # 2 Mbytes (replicated in each cluster)
    3636
    3737    data_base  = 0x20000000
    38     data_size  = 0x00010000     # 64 Kbytes (non replicated)
     38    data_size  = 0x00200000     # 2 Mbytes (non replicated)
    3939
    40     args_base  = 0x20010000
    41     args_size  = 0x00000004     # 4 bytes (non replicated)
     40    args_base  = 0x20200000
     41    args_size  = 0x00001000     # 4 Kbytes (non replicated)
    4242
    4343    stack_base = 0x40000000
     
    5454                     'C_WU', vtype = 'ELF', x = 0, y = 0, pseg = 'RAM',
    5555                     binpath = 'build/sort/sort.elf',
    56                      local = False )
     56                     local = False, big = True )
    5757
    5858    # args vseg : non local (only in cluster[0,0])
    5959    mapping.addVseg( vspace, 'sort_args', args_base , args_size,
    6060                     'C_WU', vtype = 'CONST', x = 0, y = 0, pseg = 'RAM',
    61                      init = ntasks,
    62                      local = False )
     61                     init = ntasks, local = False, big = False )
    6362
    6463    # code vsegs : local (one copy per cluster)
     
    6665        for y in xrange (y_size):
    6766            mapping.addVseg( vspace, 'sort_code', code_base , code_size,
    68                              'CXWU', vtype = 'ELF', x = 0, y = 0, pseg = 'RAM',
     67                             'CXWU', vtype = 'ELF', x = x, y = y, pseg = 'RAM',
    6968                             binpath = 'build/sort/sort.elf',
    70                              local = True )
     69                             local = True, big = True )
    7170
    7271    # stacks vsegs : local (one stack per task)
    7372    for x in xrange (x_size):
    7473        for y in xrange (y_size):
    75             for p in xrange (nprocs)
     74            for p in xrange (nprocs):
    7675                proc_id = (((x * y_size) + y) * nprocs) + p
    7776                size    = stack_size / nprocs
    7877                base    = stack_base + (proc_id * size)
    79                 mapping.addVseg( vspace, 'sort_stack_%d_%d_%d' % (x,y,p), base, size
     78                mapping.addVseg( vspace, 'sort_stack_%d_%d_%d' % (x,y,p), base, size,
    8079                                 'C_WU', vtype = 'BUFFER', x = x, y = y, pseg = 'RAM',
    8180                                 local = True, big = True )
     
    9796                trdid = (((x * y_size) + y) * nprocs) + p
    9897                mapping.addTask( vspace, 'sort_%d_%d_%d' % (x,y,p), trdid, x, y, p,
    99                                  'trsp_stack_%d_%d_%d' % (x,y,p),
    100                                  'trsp_heap_%d_%d' % (x,y), 0 )
     98                                 'sort_stack_%d_%d_%d' % (x,y,p),
     99                                 'sort_heap_%d_%d' % (x,y), 0 )
    101100
    102101    # extend mapping name
Note: See TracChangeset for help on using the changeset viewer.