Message boards :
Application Code Discussion :
suggestion - "# of cores to use" option, this will speed up Intels Hyperthread cpus..
Message board moderation
Author | Message |
---|---|
Send message Joined: 6 Jun 10 Posts: 1 Credit: 247,194 RAC: 0 |
I have an Intel i7 with 4 cpus. It has hyperthreading, which your "benchmarker" is detecting as 8 cpus, and thus it is launching 8 simultaneous tasks, but it really only has 4 cpus. My understanding is that Intel hyperthreading has a few extra storage registers to allow fast context switches, which is somewhat useful in general computing but it really doesn't help at all in compute-intensive applications like BOINC. In fact, it hinders. Doing twice as many tasks as you have CPUs actually will take more than twice as long.... as the overhead of context switches eats into valuable computation time. ------ For an immediate fix, I'd suggest allowing the user to enter the maximum number of cpus to use. I'd be willing to bet the overall throughput will increase! regards Doug Fortune Pentam Aerospace |
Send message Joined: 24 Dec 07 Posts: 1947 Credit: 240,884,648 RAC: 0 |
In my experience I've always had better throughput with HT on than off. I've typically seen about a 40% increase in the amount of work done. Mind you this is on my now aging P4's. You could try limiting the %CPUs in your BOINC Manager preferences. |
Send message Joined: 31 Aug 07 Posts: 21 Credit: 21,004,179 RAC: 0 |
Copy the following, paste it into notepad, then save as cc_config.xml in your data directory, then restart BOINC: <cc_config> <log_flags> <task>1</task> <file_xfer>1</file_xfer> <sched_ops>1</sched_ops> <cpu_sched>0</cpu_sched> <cpu_sched_debug>0</cpu_sched_debug> <rr_simulation>0</rr_simulation> <debt_debug>0</debt_debug> <task_debug>0</task_debug> <work_fetch_debug>0</work_fetch_debug> <unparsed_xml>0</unparsed_xml> <state_debug>0</state_debug> <file_xfer_debug>0</file_xfer_debug> <sched_op_debug>0</sched_op_debug> <http_debug>0</http_debug> <proxy_debug>0</proxy_debug> <time_debug>0</time_debug> <http_xfer_debug>0</http_xfer_debug> <benchmark_debug>0</benchmark_debug> <poll_debug>0</poll_debug> <guirpc_debug>0</guirpc_debug> <scrsave_debug>0</scrsave_debug> <app_msg_send>0</app_msg_send> <app_msg_receive>0</app_msg_receive> <mem_usage_debug>0</mem_usage_debug> <network_status_debug>0</network_status_debug> <checkpoint_debug>0</checkpoint_debug> </log_flags> <options> <save_stats_days>7</save_stats_days> <dont_check_file_sizes>0</dont_check_file_sizes> <http_1_0>0</http_1_0> <ncpus>4</ncpus> <max_file_xfers>8</max_file_xfers> <max_file_xfers_per_project>4</max_file_xfers_per_project> <report_results_immediately>1</report_results_immediately> <suppress_net_info>0</suppress_net_info> <disallow_attach>0</disallow_attach> <os_random_only>0</os_random_only> <zero_debts>1</zero_debts> </options> </cc_config> |
©2024 Astroinformatics Group