reduce i/o