XoX Posted August 23, 2012 Posted August 23, 2012 This is both a question, something useful, and also me asking for help. Am I right in assuming that if I a) disable Hyperthreading on my server and disable other cores of the quad core it will let tekkit run better? Since minecraft only uses 1 core, this way that one core wont have a 2nd thread running and won't get heated up from the other cores. Tekkit is literally the only thing running on my server btw. Also, I kinda need help, On my 32GB, 3.4GHz server it starts being overloaded with only 25 people on. I now disabled HT in the attempt to make it a bit better but I still have to wait and see if it will help. Quote
prenetic Posted August 23, 2012 Posted August 23, 2012 Neither of those assumptions are true, and I'll address them in more detail below: Disabling Hyper-Threading Technology in theory should only mitigate overall performance. Either the execution pipeline is able to be optimized for more IPCs (instructions per cycle) or not. Worst-case scenario you end up with the same performance as a machine without HTT. The only time you'll likely run into issues is if you see 8 threads and think 8 cores, and allocate accordingly (effectively oversubscribing your CPU by 200%). A thread is not a core with HTT, two threads exist in one core so you have 4 cores. Disabling other cores also will not help you unless you intend on using the thermal headroom to overclock the remaining cores. While you're correct that Minecraft itself is single-threaded, its scheduler (as well as the scheduler in the kernel of your OS) is capable of handling multiple threads and will distribute load appropriately. If you're only using one core, then only one core should be working and heating up so disabling cores will only hinder your performance when you actually need it (say, when you're running a fullrender in dynmap). As for what's overloading your server, you'll have to dig deeper with any of the myriad of tools available to profile JVMs. Find out what is bogging you down and see if anyone else has a similar problem. We're also unaware of how you're invoking the JVM so that may be a place to start. Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 Please explain to me better this would not make it run more smoothly. As you said, the HTT would have a 2nd thread running on that core, and that 2nd thread wouldn't help minecraft, it would just use potential processing power, I didn't dissable all cores, I disabled half, so the theoretically the server could be running one core, and everything else on the other. As for what's overloading my server. Can you help me find out what it is? Quote
prenetic Posted August 23, 2012 Posted August 23, 2012 I said the 2nd thread would only benefit you if anything, there should be no penalty. The kernel knows how to schedule threads properly for systems with HTT (and now also Bulldozer-based processors). Quote
Diabloz Posted August 23, 2012 Posted August 23, 2012 Please explain to me better this would not make it run more smoothly. As you said, the HTT would have a 2nd thread running on that core, and that 2nd thread wouldn't help minecraft, it would just use potential processing power, I didn't dissable all cores, I disabled half, so the theoretically the server could be running one core, and everything else on the other. As for what's overloading my server. Can you help me find out what it is? You could post a number of things before we can tell you what is lagging your server, we don't really know what your running, but i have to agree with prenetic. your setting your self up for a world of trouble as far as isolating your core to optimize tekkit, i Run a 45 Slot server which is constantly at cap at the peek of the day (after the kids and grown up return from work) i can tell you Ive tried it all to reduce server lag, but you will still encounter some even with a good server. I suggest posting a list of plugins you are running, and the current mods you have active, there are better ways to optimize your server then to lower the slots and hope for the best, or go to a completely extreme and isolate your cores so that your running temperature is at its lowest. Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 You could post a number of things before we can tell you what is lagging your server, we don't really know what your running, but i have to agree with prenetic. your setting your self up for a world of trouble as far as isolating your core to optimize tekkit, i Run a 45 Slot server which is constantly at cap at the peek of the day (after the kids and grown up return from work) i can tell you Ive tried it all to reduce server lag, but you will still encounter some even with a good server. I suggest posting a list of plugins you are running, and the current mods you have active, there are better ways to optimize your server then to lower the slots and hope for the best, or go to a completely extreme and isolate your cores so that your running temperature is at its lowest. Well since I currently literally only have the server running I thought I would try playing around with the cores. As for the plugins: As for the mods. No idea, I just have regular tekkit, I think all mods or enabled, just much of EE not craftable. Quote
Diabloz Posted August 23, 2012 Posted August 23, 2012 you might want to reconsider removing world/dimensional anchors and tethers, since server load comes from having active chunks loaded, especially of people are building machines such as quarries and cobble stone generators these put alot of load on your server, i also recommend using craftbukkit ++ build 75 Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 I think those are disabled. What do you mean by using craftbukkit ++ build 75 . How would I go about doing that? And also any more suggestions about the cores? I really only have tekkit running at the moment so it seems logical to me that this would reduce the load on the cores and let tekkit have the best perfomance possible. Also, any other tips? Quote
Diabloz Posted August 23, 2012 Posted August 23, 2012 under your bildcraft settings, change the network update setting to a higher value, this should also reduce lag. CB++ should also reduce almost 50% of server lag : https://github.com/Doridian/CraftBukkitPlusPlus/downloads Replace your tekkit.jar with build 75, rename tekkit.jar, Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 Thank you very much, good Sir. I will see if it helped in a few hours when more people are online. I changed the network update setting from 10 to 20 for now. Since it's a network setting I think it will be fine since I'm running on legit 1gbps. If you think I should set it higher though, please let me know. Quote
Diabloz Posted August 23, 2012 Posted August 23, 2012 also dont use nolag, use and install a plugin called Lagmeter its a more refined tool to see if your server is lagging or not, it will give you an accurate indication of your server TPS and will not put any strain on your server as far as plugins go. Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 Well, nolagg supossedly also group items together and keeps items per chuck to a certain limit and things like that. But I guess I will do that. Quote
Nentify Posted August 23, 2012 Posted August 23, 2012 CraftBukkit++ will stack items for you. :) Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 I see, awesome. Thanks for all the help guys. Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 Should I get version 1.8 or the newest one? Quote
BlasterMaster555 Posted August 23, 2012 Posted August 23, 2012 HyperThreading was a way to make the CPU more effective when shuffling threads back in the Pentium 4 days. In short, when a process runs, it has to have data in the CPU's cache in order to do anything. If that data hasn't gotten there yet, the process has to reload. On a old Pentium 4, the pipeline took 20 clock cycles to "flush", which made it super slow. HyperThreading would run another process while the first one was reloading, so that it's not wasting that time. These reloads happen a lot when computers run. Since the Prescott Pentium 4, disabling HyperThreading has no benefit to performance, and therefore is recommended you leave it on. Also, disabling cores won't help with speed. Making it run on one core means you now have the whole OS and the Tekkit Server vying for time on the CPU. If ANY background process starts chugging, it will lag the whole shebang. Just keep all your cores enabled. Quote
XoX Posted August 23, 2012 Author Posted August 23, 2012 HyperThreading was a way to make the CPU more effective when shuffling threads back in the Pentium 4 days. In short, when a process runs, it has to have data in the CPU's cache in order to do anything. If that data hasn't gotten there yet, the process has to reload. On a old Pentium 4, the pipeline took 20 clock cycles to "flush", which made it super slow. HyperThreading would run another process while the first one was reloading, so that it's not wasting that time. These reloads happen a lot when computers run. Since the Prescott Pentium 4, disabling HyperThreading has no benefit to performance, and therefore is recommended you leave it on. Also, disabling cores won't help with speed. Making it run on one core means you now have the whole OS and the Tekkit Server vying for time on the CPU. If ANY background process starts chugging, it will lag the whole shebang. Just keep all your cores enabled. Thank you, this is a helpful reply. Quote
Dr_Mannai Posted March 26, 2013 Posted March 26, 2013 Sorry to wake everyone from the dead xD but Tickthreading takes use of all cores =D Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.