An efficent cross-layer scheduling with partial channel state information