Commit Graph

380 Commits

Author SHA1 Message Date
David Anderson d07916ca51 - client: change order so that backoff because of no work
happens before server-requested backoff (eliminate double messages)

svn path=/trunk/boinc/; revision=13114
2007-07-06 21:58:32 +00:00
David Anderson 5059102816 - client: code cleanup. Was looking for fopen()s without fclose(),
didn't find any.

client/
    cs_scheduler.C
    app_start.C
    time_stats.C

svn path=/trunk/boinc/; revision=13051
2007-06-29 15:45:15 +00:00
David Anderson 45f04aa04b - back end: make it possible to run multiple instances of make_work,
for WUs of different applications
    (need to count unsent results separately by app)
- feeder: major code cleanup
    - application interleaving (for -allapps) is now done
        by building a static slot-to-app array "app_indices".
        Fractional weights now work correctly.
    - enum sizes (for -allapps) are now precomputed
        in an array "enum_sizes"
    - rename "found" (confusing!!) to "collision"
    - swapped the names of mod_select_clause and select_clause,
        to reflect what they actually are
- file deleter: in finding oldest WU, order by id instead of create_time
    (there's no index on create_time)
- user web: show "merge by name" only to host owner
- add cpu_scheduler_period() member to GLOBAL_PREFS
    (so you don't have to multiply by 60 everywhere)
- infinite() fix for HPUX

client/
    cpu_sched.C
    cs_cmdline.C
    cs_scheduler.C
    rrsim_test.C
    sim.C
    work_fetch.C
html/user/
    hosts_user.php
lib/
    parse.h
    prefs.h
sched/
    feeder.C
    file_deleter.C
    make_work.C
    sample_work_generator.C
    sched_util.C,h
tools/
    updater.C

svn path=/trunk/boinc/; revision=12968
2007-06-20 16:27:27 +00:00
David Anderson f7e650191a - client: change Win program launch to suppress hourglass cursor
- client simulator: add --cpu_sched_rr_only and --dual_dcf options

client/
    app.h
    app_start.C
    client_types.C,h
    cpu_sched.C
    cs_scheduler.C
    sim.C,h
    work_fetch.C

svn path=/trunk/boinc/; revision=12671
2007-05-15 20:29:26 +00:00
David Anderson bd8b0aed41 - core client: on attach to project,
if the initial sched request failed,
		the manager would show "communicating" for 60 sec,
		then time out and show "failed to attach".
		But the project would actually be attached.
		This was due to a logic error,
		but I fixed it in a more fundamental way:
		by considering an attach to be complete immediately,
		without waiting for a successful scheduler RPC.

		This was originally done to ensure that the URL and account key were valid.
		But when using the BOINC Manager, we've already verified
		both of these before doing the attach project RPC.

		When using boinc_cmd, you now have to check for messages
		indicating a bad URL or account key.
		I changed things to print these messages on every sched RPC.

		Implementation: the notion of "tentative project" no longer exists.

	client/
		client_state.C,h
		client_types.C,h
		cs_account.C
		cs_benchmarks.C
		cs_scheduler.C
		gui_rpc_server_ops.C
		scheduler_op.C
		sim.C
		sim_util.C

svn path=/trunk/boinc/; revision=12663
2007-05-14 19:18:45 +00:00
David Anderson 3c7d66df91 svn path=/trunk/boinc/; revision=12644 2007-05-11 03:27:25 +00:00
David Anderson a3c22a1bf7 - client: add constructor/destructor for APP_VERSION, WORKUNIT, RESULT
- client: with anonymous platform, don't link app version twice

client/
    client_types.h
    client_state.C
    cs_apps.C
    cs_files.C
    cs_prefs.C
    cs_scheduler.C
    cs_statefile.C
    sim_util.C
html/
    uotd.inc
sched/
    edf_sim.h
    server_types.h

svn path=/trunk/boinc/; revision=12638
2007-05-10 16:23:10 +00:00
David Anderson f7a12ca7d4 - core client: fix bug in code to ignore unknown platforms.
client/
		cs_scheduler.C

svn path=/trunk/boinc/; revision=12597
2007-05-07 17:49:21 +00:00
David Anderson a6521f58e7 - core client: when parsing statefile or scheduler reply,
if get an app_version with unknown platform name, ignore it.
		This means that, e.g. if someone moves a BOINC directory
		from Intel to PowerPC Mac, things will still work right.

	client/
		client_state.C,h
		cs_platforms.C
		cs_scheduler.C
		cs_statefile.C

svn path=/trunk/boinc/; revision=12579
2007-05-06 20:22:39 +00:00
David Anderson 71bb6ef5c3 - Oops! Small mistake in multi-platform changes.
client/
		cs_scheduler.C

svn path=/trunk/boinc/; revision=12564
2007-05-05 00:06:21 +00:00
David Anderson 4a1741e220 - Core client: handle multiple platforms correctly.
Remove the tacet assumption that a host can handle
        applications for a single platform.
        With the Apr 30 scheduler changes,
        a project may (at different times)
        send app versions for the same app and version number,
        but different platforms.
        Before we would have ignored all but the first;
        now we handle them correctly.

        Implementation notes:
        - Add APP_VERSION.platform, RESULT.platform,
            and RESULT.version_num.
            If these are missing from an XML doc
            (e.g. an existing state file or a scheduler reply
            from a project not running current server)
            then set to the primary platform.
        - Continue to write workunit.version_num
            and active_task.version_num to state file,
            even though these are no longer part of the struct.
            This allows users to revert to an older version.

    client/
        app.C
        check_state.C
        client_state.C,h
        client_types.C,h
        cs_apps.C
        cs_scheduler.C
        cs_statefile.C
        sim.C

svn path=/trunk/boinc/; revision=12542
2007-05-03 17:14:30 +00:00
Rom Walton a100628ee8 - fixes #154:
* refactored the alternate platform mechinism so that we
          can support multiple alternate platforms.
        * moved everything to cs_platforms.C since we expect the
          kind of sprawl that is in host_info.C on the *nix
          environments.
    - Clean up some warnings
          
    client/
        acct_setup.C
        client_state.C, .h
        client_types.h
        cs_platforms.C (Added)
        cs_scheduler.C
        cs_statefile.C
        http_curl.C
    lib/
        str_util.h

svn path=/trunk/boinc/; revision=12531
2007-05-02 17:53:35 +00:00
Eric J. Korpela 8a8ffc8ef9 Eric K 24 Apr 07
-  Exteded the "altername_platform" mechanism to x86_64 linux
       and solaris.  The current alternate platforms found by configure
       are...
	 x86_64-pc-linux-gnu    -> i686-pc-linux-gnu
	 sparc64-sun-solaris    -> sparc-sun-solaris
	 sparc-sun-solaris      -> sparc-sun-solaris2.7
	 powerpc64-apple-darwin -> powerpc-apple-darwin
    -  The alternate platform can be overridden on the configure command line
         --with-boinc-alt-platform="platformname"

    m4/
        boinc_platform.m4
    sched/
        Makefile.am
    client/
        client_state.C
        cs_scheduler.C
        client_state.h


svn path=/trunk/boinc/; revision=12467
2007-04-25 02:02:24 +00:00
Rom Walton 9eda52126b Rom 19 Apr 2007
- Match the client-side and server-side XML for alternate
        platforms.
    - Print both the max active memory usage and max idle
        memory usage after all the preference information has
        been parsed.
        
    client/
        cs_prefs.C
        cs_scheduler.C

svn path=/trunk/boinc/; revision=12425
2007-04-20 03:11:48 +00:00
Rom Walton ac6974b62b Rom 19 Apr 2007
- Fix a minor compile problem on 64-bit Windows platforms with the
        call to SetTimer.
    - fixes #80: Introduce the notion of an alternate platform for 64-bit
        Windows clients, which can also run 32-bit Windows apps.
        
      TODO: We'll need to refactor the whole platform section in the
        scheduler request creation section so that it can handle
        multiple alternate platforms and for Linux/Mac.
        
    api/
        windows_opengl.C
    client/
        client_state.C, .h
        cpp.h
        cs_scheduler.C

svn path=/trunk/boinc/; revision=12421
2007-04-19 20:53:16 +00:00
David Anderson bc98f0e90c *** empty log message ***
svn path=/trunk/boinc/; revision=12367
2007-04-13 22:55:18 +00:00
David Anderson 3eaea4fb71 *** empty log message ***
svn path=/trunk/boinc/; revision=12347
2007-04-11 21:49:57 +00:00
David Anderson 8ee50511de *** empty log message ***
svn path=/trunk/boinc/; revision=12277
2007-03-28 21:30:45 +00:00
David Anderson bcb25e86a1 *** empty log message ***
svn path=/trunk/boinc/; revision=12264
2007-03-22 02:38:45 +00:00
David Anderson 138f17af40 *** empty log message ***
svn path=/trunk/boinc/; revision=12216
2007-03-13 19:33:27 +00:00
David Anderson 81effa6a7b *** empty log message ***
svn path=/trunk/boinc/; revision=12127
2007-02-21 16:26:51 +00:00
David Anderson c51b5b443c *** empty log message ***
svn path=/trunk/boinc/; revision=11984
2007-01-26 22:34:05 +00:00
David Anderson 47f8a509fe *** empty log message ***
svn path=/trunk/boinc/; revision=11981
2007-01-26 18:38:17 +00:00
David Anderson a26b6a2215 *** empty log message ***
svn path=/trunk/boinc/; revision=11972
2007-01-25 23:39:06 +00:00
David Anderson 3f17de9d9d *** empty log message ***
svn path=/trunk/boinc/; revision=11971
2007-01-25 21:36:27 +00:00
David Anderson 71fc6345b7 *** empty log message ***
svn path=/trunk/boinc/; revision=11957
2007-01-24 21:20:57 +00:00
David Anderson 563f2736a4 *** empty log message ***
svn path=/trunk/boinc/; revision=11947
2007-01-23 23:02:19 +00:00
David Anderson c12709c7e2 *** empty log message ***
svn path=/trunk/boinc/; revision=11938
2007-01-23 17:24:43 +00:00
David Anderson 7550b38daf *** empty log message ***
svn path=/trunk/boinc/; revision=11899
2007-01-18 19:29:15 +00:00
Rom Walton 885aa4f833 *** empty log message ***
svn path=/trunk/boinc/; revision=11829
2007-01-10 23:50:38 +00:00
David Anderson 61ed72da89 *** empty log message ***
svn path=/trunk/boinc/; revision=11826
2007-01-10 20:29:44 +00:00
David Anderson a810ae3be7 *** empty log message ***
svn path=/trunk/boinc/; revision=11806
2007-01-08 22:15:21 +00:00
David Anderson 80c401e946 *** empty log message ***
svn path=/trunk/boinc/; revision=11722
2006-12-26 00:59:18 +00:00
David Anderson 19785132bc *** empty log message ***
svn path=/trunk/boinc/; revision=11712
2006-12-21 16:56:33 +00:00
David Anderson 86ad19ce5f *** empty log message ***
svn path=/trunk/boinc/; revision=11672
2006-12-14 00:42:43 +00:00
David Anderson 41eb40b051 *** empty log message ***
svn path=/trunk/boinc/; revision=11643
2006-12-11 23:42:54 +00:00
David Anderson 582942b864 *** empty log message ***
svn path=/trunk/boinc/; revision=11637
2006-12-07 23:39:23 +00:00
David Anderson dcf1b946db *** empty log message ***
svn path=/trunk/boinc/; revision=11589
2006-11-26 02:06:30 +00:00
David Anderson 76991d81b5 *** empty log message ***
svn path=/trunk/boinc/; revision=11561
2006-11-21 20:57:36 +00:00
David Anderson 47df6149d5 *** empty log message ***
svn path=/trunk/boinc/; revision=11530
2006-11-15 15:16:45 +00:00
David Anderson fe6a762765 *** empty log message ***
svn path=/trunk/boinc/; revision=11525
2006-11-15 04:28:15 +00:00
David Anderson 8b9c4eebef *** empty log message ***
svn path=/trunk/boinc/; revision=11508
2006-11-10 00:20:08 +00:00
David Anderson 9d9b35f201 *** empty log message ***
svn path=/trunk/boinc/; revision=11502
2006-11-09 03:13:04 +00:00
David Anderson 92a34648a6 *** empty log message ***
svn path=/trunk/boinc/; revision=11494
2006-11-08 00:20:16 +00:00
David Anderson 19881ceb54 *** empty log message ***
svn path=/trunk/boinc/; revision=11482
2006-11-06 23:11:07 +00:00
David Anderson 8901e52884 *** empty log message ***
svn path=/trunk/boinc/; revision=11363
2006-10-26 21:22:38 +00:00
David Anderson 7918111de2 *** empty log message ***
svn path=/trunk/boinc/; revision=11356
2006-10-25 21:15:08 +00:00
David Anderson 68b8204b53 *** empty log message ***
svn path=/trunk/boinc/; revision=11351
2006-10-24 23:53:59 +00:00
David Anderson bc129b6bbb *** empty log message ***
svn path=/trunk/boinc/; revision=11278
2006-10-12 19:43:55 +00:00
David Anderson 0496940440 *** empty log message ***
svn path=/trunk/boinc/; revision=11265
2006-10-09 21:43:59 +00:00