SIM800L return garbage response

if I am sending AT command using Software Serial library GSM SIM800 give garbage value in response .if I send AT directly
from Serial monitor it works properly.I post code below

#include <SoftwareSerial.h>
SoftwareSerial myGsm(7,8);//rx,tx



void setup(){

  myGsm.begin(115200);
  Serial.begin(115200);
  Serial.print("power up" );
  delay(1000); 

}


void loop(){
Serial.println("Hello");
  myGsm.println("AT");
  delay(1000);
  printSerialdata();

   myGsm.println("AT+CPIN?");
  delay(1000);
  printSerialdata();

  
  myGsm.println("AT+CREG?");
  delay(1000);
  printSerialdata();
  
  myGsm.println("AT+CGATT?");
  delay(1000);
  printSerialdata();

  myGsm.println("AT+CIPSHUT");
  delay(1000);
  printSerialdata();

  myGsm.println("AT+CIPSTATUS");
  delay(1000);
  printSerialdata();

  myGsm.println("AT+CIPMUX=0");
   delay(1000);
  printSerialdata();

  myGsm.println("AT+CSTT=\"airtelgprs.com\",\"\",\"\"");
  delay(1000);
  printSerialdata();

  myGsm.println("AT+CIICR");
    delay(1000);
  printSerialdata();

  myGsm.println("AT+CIFSR");
  delay(1000);
  printSerialdata();

  myGsm.println("AT+CIPSTART=\"TCP\",\"iot1.os3.co.in\",\"8088\"");
   delay(2000);
  printSerialdata();

  myGsm.println("AT+CIPSEND");
  delay(1000);
  printSerialdata();

  myGsm.println("POST /apt/test HTTP/1.0");
  myGsm.println("#026");
  delay(1000);
  printSerialdata();

  myGsm.println("AT+CIPSHUT");
   delay(1000);
  printSerialdata();

  
}

void printSerialdata()
{
 while(myGsm.available()!=0)
 Serial.write(myGsm.read());
}

Kindly Check you baudrate at your serial monitor at the lower right. then choose the baudrate thats matches up with your program's baudrate.