My Vf2SS W/HSM greatly slows down depending if I have G187 P3 vs G187 P1 active, which is limiting the blocks per second (it actually limits accelerations). I dont mean to patronize so there's my disclaimer but blocks per min isnt really a good description of what is going on TBH. What is most important is the difference in time between blocks, the controller's look ahead, the feedrate, and the machines linear acceleration.
Lets say you are traveling at 100 ipm. If you have 60 blocks that each travel 1 inch your effective blocks/sec is going to be 1.66. It is going to be smooth. If you have 60 blocks that each travel .002" at 100IPM, the effective blocks/sec is about 833. (100IPM=1.66IPS | .002in/1.66IPS = .0012 sec/block or 833 blocks/sec). As you can see, it is pretty easy to max out 1000 blocks/second. Keep in mind this isn't taking into account processor delays, changes in acceleration, etc. Look ahead effects how the feed accelerates from point to point. With 0 look ahead it becomes choppy because it is accelerating and decelerating for every block. With HSM it can read 60 blocks ahead and smooth its acceleration between points. In the example above, the machine only has .072 seconds to make accelerations calculations. If it cant make all the calculations in time, it becomes choppy.
IMO Haas' look ahead is less than satisfactory, so I really work on making sure my program is as smooth as it can be. So like I said earlier to get the smoothest and most accurate tool path one needs to lower your tolerance and max out the smoothing. Smoothing takes a bunch of points does some math, and generates a 2D curve that best incorporates all of the points. BUT lets say your toolpath truly is a 3d tool path moving in xyz. Smoothing to my knowledge only works in 2D arcs, so if you have a true 3d tool path smoothing doesnt do much. This can result in very dense/ splochy tool paths. The tool will be traveling along happly and then suddenly it runs into 100 points that are only .002 inches apart. The machine will max out its look ahead, slow down to make sure it hits all the points within the defined tolerance (bc of accuracy settings), but his slow down can cause surface imperfections/ potential gouges.
I attached Steep and shallow and Parallel tool paths with 'show points' activated as examples. Steep and shallow was forced to just parallel and all the parameters were essentially the same. Tolerance was set to 2e-5 and smoothing for parallel operation was [tolerance*9.99]. Steep and shallow doesnt have the same kind of smoothing, and it shows.
You can see the "standard" parallel tool path would be much more controler friendly.

