[prev in list] [next in list] [prev in thread] [next in thread] 

List:       grid-engine-dev
Subject:    dispatch_jobs()
From:       patrik.koch () philips ! com
Date:       2002-04-14 17:21:23
Message-ID: OF5184E188.7F5E7AF2-ONC1256B9B.005A4E75 () diamond ! philips ! com
[Download RAW message or body]

Hi everybody,

I'm reading the scheduler code (still 5.3_beta2) and found some points:

load_correction.c, correct_capacities()
=======================================
line 234:  inuse_ext = full_capacity - lGetDouble(inuse_rms, CE_doubleval) - dval;
           if (inuse_ext > 0.0) {
              lSetDouble(total, CE_doubleval, full_capacity - inuse_ext);

As I understand this means the following: If the available amount of the resource according
to the internal bookkeeping (inuse_rms, right?) plus the measured and scaled load (dval)
together are less than the total amount of the resource acording bookkeeping,
than this total value is reduced. Why is it done? And why isn't the inuse_rms
value increased?
I would expect that when (inuse_ext < 0.0), i.e. the measured load is higher then the
consumed value according the internal bookkeeping, the amount of available resource
in the bookkeeping (inuse_rms, right?) is reduced?!
Or do I completly misunderstand EH_consumable_actual_list? Please advise me.

suspend_threshhold.c, unsuspend_job_in_queues()
===============================================
line 176: /* prevent multiple selection of this job */
          lSetUlong(ja_task, JAT_state, lGetUlong(ja_task, JAT_state)
            & JSUSPENDED_ON_THRESHOLD);
Shouldn't it be "& ~JSUSPENDED_ON_THRESHOLD" ?
And for suspend_job_in_queues()some lines above:
         lSetUlong(ja_task, JAT_state, lGetUlong(ja_task, JAT_state)
            & JSUSPENDED_ON_THRESHOLD);
Shouldn't it be " JSUSPENDED_ON_THRESHOLD" ?
As I see it the same job is selected QU_nsuspended times ?!


sort_host.c, sort_host_list()
=============================
The local variables host_complex and host_complex_attributes aren't used, the related function calls
are side effect free -> both variables and the related function calls can be removed

Regards,

Patrik





[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic