Mysql slave use more memory than master server
query_cache_size = 200M


Too big.  Don't go past 50M, else the maintenance will hurt performance.


  innodb_buffer_pool_size = 1G


If you are using InnoDB, set this to 70% of available RAM.

table_open_cache (formerly called table_cache) relates to the number of tables you might need to open, but not the sizes of the tables.  A few hundred is typically enough.  4096 is needed by only a few systems; don't go past that without a clear indication that you need it.


  All the activities are happening at master


If so, what is the Slave for?

Please provide SHOW VARIABLES; and SHOW GLOBAL STATUS; (on each server) so I can help you dig deeper into your puzzle.