I've been looking into various methods for making redstone in minecraft operate faster. I even went so far as to decompile minecraft and find a specific variable, timerSpeed in Timer.java, that supposedly affects the amount of ticks per second. I changed the timerSpeed from its default 1 to 10 and ran some tests on the much faster minecraft. Mostly everything in the game appeared to operate much faster but in the end, redstone and even the mods still moved that their normal rate. Thus, the timerSpeed approach was an utter failure. Additionally, I found the variable ticksPerSecond but it is assigned the value p_i1018_1_ which I have no idea what it is. Any tips on how to modify minecraft so as the increase the operation speed of redstone would be greatly appreciated. Thanks.
I did a bit more investigation into minecraft.java as you suggested. The function Timer whose argument is by default 20.0F is what appears to be responsible for the amount of ticks per second. This function is referred to by Timer.java and gives the variable this.ticksPerSecond the value of 20.0F as well. That's where we get the 20 ticks per second in game. I changed the argument in the function Timer in minecraft.java to 50.0F to do some testing. One would assume that you would then have 50 ticks per second in game and, if a "redstone tick" is directly related to the number of normal ticks per second, then you would have 25 "redstone ticks" per second. After some testing however, it appears as if this is not the case and "redstone ticks" appear to be independent of the normal ticks per second; there was still only the normal 10 "redstone ticks" in one second. This is quite confusing because you always here of "redstone ticks" as being dependent on the number of normal ticks per second ("A redstone tick describes two game ticks" (Minecraft Wiki)). I'll have to do further investigation to find what is responsible for the rate at which redstone updates.
Side Note: It also appears as if animal movement is independent on the number of ticks per second as well. With 50 ticks per second, the animals still move at the same rate.
That's because redstone "ticks" by propagate from neighbor to neighbor.
A few redstone powered blocks also define scheduled ticks, such as BlockRedstoneComparator.
Scheduled ticks will be dealt with by WorldServer#tickUpdates(boolean), called by MinecraftServer#tick()...which is basically called between 1 and 50 milliseconds apart, depending on how much time the previous tick took to perform.
I succeeded to some extent. I began picking apart the tick scheduling system in worldServer.java to try to understand it more. Basically, it seems like the game would pick one of the blocks to to update, schedule it at some time in the future, usually 2 ticks ahead it seems and then it would be updated when the game's worldTotalTime reached that scheduled time. The method I used to increase the redstone's propagation was to increase the rate at which the worldTotalTime increased from 1 tick per cycle to 10 or 100. Keep in mind that the worldTotalTime rate of increase is independent and different from the ticksPerSecond in Timer.java. Both interestingly and disappointingly however, the maximum speedup I could get was only about 2x no matter how high I increased the ticks per cycle. The problem wasn't system load as the game still ran fine and with 60 fps. I'll now have to figure out why I can't increase it further.
Side Note: It also appears as if animal movement is independent on the number of ticks per second as well. With 50 ticks per second, the animals still move at the same rate.
Server ticks are in MinecraftServer.java.
A few redstone powered blocks also define scheduled ticks, such as BlockRedstoneComparator.
Scheduled ticks will be dealt with by WorldServer#tickUpdates(boolean), called by MinecraftServer#tick()...which is basically called between 1 and 50 milliseconds apart, depending on how much time the previous tick took to perform.