Question about reading sensor

My code in Arduino print a period of time in one loop about 10 ms. about 3 ms for each sensor (gyro, accelero, and magneto)

Is this period slow? ,if so how to decrease? Thank you for your answers

I imagine it depends on the bit rate of the serial interface. However, you haven't shown us any of your code, so that's just a guess.

Sorry, these are my code Accelero (ADXL345), Gyro (L3G4200D), and Magneto (HMC5883L) consecutively.

int setupADXL345(){
  writeAccelRegister(ADXL345_Address, 0x2D, 0);      
  writeAccelRegister(ADXL345_Address, 0x2D, 16);
  writeAccelRegister(ADXL345_Address, 0x2D, 8);
}

void writeAccelRegister(int deviceAddress, byte address, byte val) {
    Wire.beginTransmission(deviceAddress); //start transmission to device 
    Wire.write(address);                   //send register address
    Wire.write(val);                       //send value to write
    Wire.endTransmission();                //end transmission
}

void getAccelValues(){
  byte xMSB = readAccelRegister(ADXL345_Address, 0x33);
  byte xLSB = readAccelRegister(ADXL345_Address, 0x32);
  AccelVal[ROLL] = ((xMSB << 8) | xLSB) - ACCEL_X_OFFSET;
  
  byte yMSB = readAccelRegister(ADXL345_Address, 0x35);
  byte yLSB = readAccelRegister(ADXL345_Address, 0x34);
  AccelVal[PITCH] = ((yMSB << 8) | yLSB) - ACCEL_Y_OFFSET;
  
  byte zMSB = readAccelRegister(ADXL345_Address, 0x37);
  byte zLSB = readAccelRegister(ADXL345_Address, 0x36);
  AccelVal[YAW] = ((zMSB << 8) | zLSB) - ACCEL_Z_OFFSET;  
  
  for(int AXIS=0; AXIS<3; AXIS++){
    if(AccelVal[AXIS] > 256) AccelVal[AXIS] = 256;
    else if(AccelVal[AXIS] < -256) AccelVal[AXIS] = -256;
    if(AXIS<2) AccelDeg[AXIS] = asin(AccelVal[AXIS]*(ACCEL_SENSITIVITY+4))*RAD_TO_DEG;
    else AccelDeg[AXIS] = asin(AccelVal[AXIS]*ACCEL_SENSITIVITY)*RAD_TO_DEG;
  } //change to rad
}

int readAccelRegister(int deviceAddress, byte address){
    int data;
    Wire.beginTransmission(deviceAddress);
    Wire.write(address);                //register to read
    Wire.endTransmission();
    Wire.requestFrom(deviceAddress, 1); //read a byte
    while(!Wire.available()) {}         //waiting
    data = Wire.read();
    return data;
}
int setupL3G4200D(int scale){
  writeGyroRegister(L3G4200D_Address, CTRL_REG1, 0b00001111);  // Enable x, y, z and turn off power down:
  writeGyroRegister(L3G4200D_Address, CTRL_REG2, 0b00000000);  // If you'd like to adjust/use the HPF, you can edit the line below to configure CTRL_REG2:
  writeGyroRegister(L3G4200D_Address, CTRL_REG3, 0b00001000);
  if(scale == 250)  writeGyroRegister(L3G4200D_Address, CTRL_REG4, 0b00000000);
  if(scale == 500)  writeGyroRegister(L3G4200D_Address, CTRL_REG4, 0b00010000);
  if(scale == 2000) writeGyroRegister(L3G4200D_Address, CTRL_REG4, 0b00110000);
  writeGyroRegister(L3G4200D_Address, CTRL_REG5, 0b00000000);
}

void writeGyroRegister(int deviceAddress, byte address, byte val) {
    Wire.beginTransmission(deviceAddress); // start transmission to device 
    Wire.write(address);                   // send register address
    Wire.write(val);                       // send value to write
    Wire.endTransmission();                // end transmission
}

void getGyroValues(){
  byte xMSB = readGyroRegister(L3G4200D_Address, 0x29);
  byte xLSB = readGyroRegister(L3G4200D_Address, 0x28);
  GyroVal[ROLL] = ((xMSB << 8) | xLSB) - GYRO_X_OFFSET;
  
  byte yMSB = readGyroRegister(L3G4200D_Address, 0x2B);
  byte yLSB = readGyroRegister(L3G4200D_Address, 0x2A);
  GyroVal[PITCH] = ((yMSB << 8) | yLSB) - GYRO_Y_OFFSET;
  
  byte zMSB = readGyroRegister(L3G4200D_Address, 0x2D);
  byte zLSB = readGyroRegister(L3G4200D_Address, 0x2C);
  GyroVal[YAW] = ((zMSB << 8) | zLSB) - GYRO_Z_OFFSET;
  
  for(int AXIS=0; AXIS<3; AXIS++){
    GyroData[AXIS] = GyroVal[AXIS]*GYRO_SENSITIVITY;
  } //change to dps
}

int readGyroRegister(int deviceAddress, byte address){
    int data;
    Wire.beginTransmission(deviceAddress);
    Wire.write(address);                // register to read
    Wire.endTransmission();
    Wire.requestFrom(deviceAddress, 1); // read a byte
    while(!Wire.available()) {}         // waiting
    data = Wire.read();
    return data;
}
int setupHMC5883L(){
  writeMagnetRegister(HMC5883L_Address, 0x01, 0x40);
  writeMagnetRegister(HMC5883L_Address, 0x02, 0x00);
}

void writeMagnetRegister(int deviceAddress, byte address, byte val) {
    Wire.beginTransmission(deviceAddress); //start transmission to device 
    Wire.write(address);                   //send register address
    Wire.write(val);                       //send value to write
    Wire.endTransmission();                //end transmission
}

void getMagnetValues(){
  byte xMSB = readMagnetRegister(HMC5883L_Address, 0x03);
  byte xLSB = readMagnetRegister(HMC5883L_Address, 0x04);
  MagnetVal[ROLL] = ((xMSB << 8) | xLSB) - HMC5883L_X_OFFSET;
  
  byte yMSB = readMagnetRegister(HMC5883L_Address, 0x07);
  byte yLSB = readMagnetRegister(HMC5883L_Address, 0x08);
  MagnetVal[PITCH] = ((yMSB << 8) | yLSB) - HMC5883L_Y_OFFSET;
  
  byte zMSB = readMagnetRegister(HMC5883L_Address, 0x05);
  byte zLSB = readMagnetRegister(HMC5883L_Address, 0x06);
  MagnetVal[YAW] = ((zMSB << 8) | zLSB) - HMC5883L_Z_OFFSET;  
  
  for(int AXIS=0; AXIS<3; AXIS++){
    MagnetData[AXIS] = MagnetVal[AXIS]*MAGNET_SENSITIVITY;
  } //change to gauss
}

int readMagnetRegister(int deviceAddress, byte address){
    int data;
    Wire.beginTransmission(deviceAddress);
    Wire.write(address);                //register to read
    Wire.endTransmission();
    Wire.requestFrom(deviceAddress, 1); //read a byte
    while(!Wire.available()) {}         //waiting
    data = Wire.read();
    return data;
}

and this is the main one

void setup(){
  iSAAC328p_init_timer();
  Wire.begin();
  Serial.begin(57600);
  
  readReceiver();
  Motor_Elevon_Setup();
  
  setupL3G4200D(2000); //Configure L3G4200  - 250, 500 or 2000 deg/sec
  setupADXL345();
  setupHMC5883L();
  delay(1500); //wait for the sensor to be ready

  /*getAccelValues();
  for(int AXIS=0; AXIS<3; AXIS++){
    Angle[AXIS] = AccelDeg[AXIS];
  } //get initial degrees*/
  
  //delay(500);
}

void loop(){
  time = micros();  
  t2 = time;
  dt = t2 - t1;
  t1 = t2;
  
  getGyroValues();
  getAccelValues();
  getMagnetValues();
  
  RadioMap();
  RadioCommand();
  
  ComplementaryFilter();
  PIDcontrol();
  
  Mixtable();  
  if(rxMap[MOTOR] < 1030) StopMotors();
  else MotorControl();
  ElevonControl();
  
  PrintData();
}

it takes time at
getGyroValues();
getAccelValues();
getMagnetValues();

and I set the braudrate at 57600