We have proposed an ``Asymmetric Distributed Shared Memory: ADSM'', that provides high-speed-update distributed memory access by software. As for the read, the ADSM prepares the page-size cache and exploits the virtual shared memory mechanism. As for the write, the ADSM executes a sequence of instructions for managing consistency after the corresponding store instruction. On the ADSM, various optimizations can be performed. The compiler can generate the instructions for managing consistency according to the consistency protocol we want to implement. The compiler reduces the overhead of the shared write by reducing the number of instructions for managing consistency. We have implemented prototypes of the compiler and the runtime system for the ADSM on a multicomputer Fujitsu AP1000+. We evaluate the effectiveness of the ADSM scheme by experiments.