Emoncms is quite capable “of keeping up” you could be posting (not polling) data from many devices in 10s, 5s, 3s or even 1s intervals and it will keep up, take emoncms.org for instance, that keeps up with thousands of devices posting every 10s.
It was decided many years ago that the highest granularity that was needed was 1s therefore emoncms uses whole seconds only, parts of it use js which uses whole milliseconds but that is pretty much like measuring for a carpet in mm when it’s sold by whole meters only.
Given the 1s maximum resolution, there is the ability to use 1s intervals in phptimeseries or mysql feeds but another decision in emoncms was to make only the phpfina feeds available to the apps module and a few other features, so if you deviate from the run of the mill phpfina then you start to face other restrictions. As explained above, the fact that emoncms truncates timestamps, a 1s interval would be +/-100% inaccurate as 0.9999s would be seen as 0s whilst 1.0000001 seconds would be seen as 1s. This renders small interval more vulnerable to errors and since all the OEM sketches (except the emonpi strangely) have a max post rate of 10s as that was a happy medium that provided fast(ish) updates without overloading emoncms.org (almost halving traffic from old 5s intervals) with minimal inaccuracy, there was no point supporting smaller fixed intervals than 10s, except on local installs to support older 5s devices (and emonpi’s).
If you want greater resolution I would recommend using grafana/influxdb.
Maybe not but it would potentially require 3x as much as 10s, and it’s not just about posting the data, you also need to query the data to see it, with files 3x the size containing 3x the datapoints and rendering 3x the data on screen it can mount up. Nearly all graphing uses “cherry picked” values to form a view anyway, if you try to view 1 whole day it may be in a graph 900points wide (or is it 1200 I forget either way) so whether that is 900 of the 8640 10s datapoints or 900 of the 28800 3s datapoints it still won’t be 100% accurate, but either way it will be more accurate than you are likely to detect at that level, its only when you start looking at 10min periods under the microscope that 3s is better than 10s, but due to the “whole second” thing it’s still not accurate and therefore almost without value.
If it’s non-linear I would suspect that is a phase error effecting loads of differing PF differently, either the CT’s are not fully close. broken or the calibration isn’t quite right, hence my requests for the data previously.