Abstract
Stream processors, with the stream programming model, have demonstrated significant performance advantages in the domains signal processing, multimedia and graphics applications, and are covering scientific applications. Jacobi iteration, which is widely used to solve partial differential equations, is an important class of scientific programs. As computers became more powerful, scientists have begun writing 3-D programs to solve PDEs. In this paper we examine the applicability of a stream processor to 3-D Jacobi iteration. In a stream processor system, the management of system resources is the programmers’ responsibility. Compared with 2-D Jacobi iteration, some new issues must be considered, since reuse along the third dimension cannot fit in on-chip memory. We first map 3-D Jacobi iteration in FORTRAN version to the stream processor in a straightforward way. We then present several optimizations, which avail the stream program for 3-D Jacobi iteration, called StreamJacobi, of various aspects of the stream processor architecture. Finally, we analyze the performance of StreamJacobi, with different scales, and the presented optimizations. The final stream program StreamJacobi is from 2.43 to 11.48 times faster than the corresponding FORTRAN programs on a Xeon processor, with the optimizations playing an important role in realizing the performance improvement.
This work was supported by NSFC (61003075, 61103193, 61103011, 61103014).
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Rixner, S.: Stream Processor Architecture. Kluwer Academic Publishers (2001)
Kapasi, U., Dally, W., Rixner, S., Owens, J., Khailany, B.: The Imagine Stream Processor. In: Proceedings 2002 IEEE International Conference on Computer Design, pp. 282–288 (2002)
Gordon, M., Maze, D., Amarasinghe, S., Thies, W., Karczmarek, M., Lin, J., Meli, A., Lamb, A., Leger, C., Wong, J., et al.: A stream compiler for communication-exposed architectures. ACM SIGARCH Computer Architecture News 30(5), 291–303 (2002)
Fatica, M., Jameson, A., Alonso, J.: STREAMFLO: an Euler solver for streaming architectures. Submitted to AIAA Conference
Kapasi, U., Rixner, S., Dally, W., Khailany, B., Ahn, J., Mattson, P., Owens, J.: Programmable Stream Processors. Computer 36(8), 54–62 (2003)
Das, A., Dally, W.J., Mattson, P.: Compiling for stream processing. In: PACT 2006: Proceedings of the 15th International Conference on Parallel Architectures and Compilation Techniques, pp. 33–42. ACM Press, New York (2006)
Buck, I., Foley, T., Horn, D., Sugerman, J., Fatahalian, K., Houston, M., Hanrahan, P.: Brook for gpus: stream computing on graphics hardware. ACM Trans. Graph. 23(3), 777–786 (2004)
Kahle, J.A., Day, M.N., Hofstee, H.P., Johns, C.R., Maeurer, T.R., Shippy, D.: Introduction to the cellmultiprocessor. IBM J. Res. Dev. 49(4/5), 589–604 (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Zhang, Y., Li, G., Li, Y., Sun, C., Lu, P. (2013). The Evaluation and Optimization of 3-D Jacobi Iteration on a Stream Processor. In: Park, J.J.(.H., Arabnia, H.R., Kim, C., Shi, W., Gil, JM. (eds) Grid and Pervasive Computing. GPC 2013. Lecture Notes in Computer Science, vol 7861. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38027-3_34
Download citation
DOI: https://doi.org/10.1007/978-3-642-38027-3_34
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-38026-6
Online ISBN: 978-3-642-38027-3
eBook Packages: Computer ScienceComputer Science (R0)