Changeset - 5b97ab8e1501
[Not reviewed]
default
0 1 0
LordOfWar - 16 years ago 2009-10-25 15:03:03

added some more code to the smarter frame finder, and indented some code
1 file changed with 18 insertions and 11 deletions:
0 comments (0 inline, 0 general)
src/server/distrend.c
Show inline comments
 
@@ -476,18 +476,17 @@ int find_jobframe_new(struct distrenjob 
 
  distrenjob_ptr && !distrenjob_ptr->hibernate && distrenjob_ptr->prev_frame_index < distrenjob_ptr->total_frames;
 
  distrenjob_ptr = distrenjob_ptr->next)
 
  {
 
	  power_difference = (general_info.total_render_power / general_info.total_priority_pieces)*distrenjob_ptr->priority;
 
	  power_difference = (general_info.total_render_power / general_info.total_priority_pieces)*(11-distrenjob_ptr->priority);
 
	  power_difference = power_difference - distrenjob_ptr->assigned_render_power;
 

	
 
	  if(power_difference > greatest_power_difference)
 
	  {
 
		  job_to_render = distrenjob_ptr;
 
		  greatest_power_difference = power_difference;
 
		  found = 1;
 
	  }
 
  }
 

	
 
  find_jobframe_from_job(job_to_render, job, frame);
 

	
 
  if(!found)
 
    {
 
      fprintf(stderr, "No more jobs to render\n");
 
@@ -495,6 +494,9 @@ int find_jobframe_new(struct distrenjob 
 
      return 1;
 
    }
 

	
 
  find_jobframe_from_job(job_to_render, job, frame);
 
  job_to_render->assigned_render_power = job_to_render->assigned_render_power + rend_pwr;
 

	
 
  return 0;
 
}
 

	
 
@@ -503,6 +505,7 @@ int find_jobframe_again(struct distrenjo
 
{
 
  if(general_info.hibernate)
 
    return 1;
 

	
 
  short int found;
 
  struct distrenjob *distrenjob_ptr;
 

	
 
@@ -703,6 +706,8 @@ void importGeneralInfo()
 
  general_info.free_clients = 0;
 
  general_info.rendering_clients = 0;
 
  general_info.timestamp = 0;
 
  general_info.total_render_power = 0;
 
  general_info.total_priority_pieces = 0;
 

	
 
  xmlFreeDoc(doc);
 
}
 
@@ -1073,6 +1078,8 @@ int main(int argc, char *argv[])
 
  general_info.highest_jobnum = 0;
 
  general_info.hibernate = 0;
 
  general_info.timestamp = 0;
 
  general_info.total_render_power = 0;
 
  general_info.total_priority_pieces = 0;
 

	
 
  int command;
 
  jobnum_t jobnum;
 
@@ -1097,16 +1104,16 @@ int main(int argc, char *argv[])
 
  for(counter = 0; counter < argc; counter ++)
 
    {
 
      if(strcmp(argv[counter], "-h") == 0)
 
	{
 
	  fprintf(stderr, "Usage: distrend [option] \nStarts the distrend server\n\t-h\tshow this help\n\t-t\tlaunches queue testing interface \n");
 
	  return 2;
 
	}
 
      {
 
    	  fprintf(stderr, "Usage: distrend [option] \nStarts the distrend server\n\t-h\tshow this help\n\t-t\tlaunches queue testing interface \n");
 
		  return 2;
 
      }
 

	
 
      else if(strcmp(argv[counter], "-t") == 0)
 
	{
 
	  fprintf(stderr, "Entering into test mode...\n\n");
 
	  test=1;
 
	}
 
      {
 
    	  fprintf(stderr, "Entering into test mode...\n\n");
 
		  test=1;
 
      }
 
    }
 
  cont = 1;
 
  memset(&head, '\0', sizeof(struct distrenjob));
0 comments (0 inline, 0 general)