X10 is a high-productivity programming language that internally supports parallel and distributed computing. X10 is based on an APGAS (Asynchronous Partitioned Global Address Space) programming model. Applications written in X10 can run on multiple places, which are abstractions of computation nodes, create activities to perform parallel computations in the same place by using async statements, or perform distributed computing by changing the execution places by using at statements. In this paper, we report on our experiences in porting typical applications for high-performance computing to X10. These applications were originally written in C with MPI, and the ported applications were written in pure X10. We confirmed that the X10 port of these applications showed comparable performance and scalability in a large-scale, parallel, and distributed environment such as Power 775, which is one of IBM's latest supercomputers. We also report several techniques to obtain good performance in X10 for typical coding patterns such as array accesses, broadcasts, and data exchanges
of ghost regions of data.