Abstract
Nowadays general-purpose computing on graphics processing unitsĀ (GPGPUs) performs computations what were formerly handled by the CPU using hundreds of cores on GPUs. It often improves the performance of sequential computation when the running program is well-structured and formulated for massive threading. The CYK algorithm is a well-known algorithm for the context-free language membership test and has been used in many applications including grammar inferences, compilers and natural language processing. We revisit the CYK algorithm and its structural properties suitable for parallelization. Based on the discovered properties, we then parallelize the algorithm using different combinations of memory types and data allocation schemes using a GPU. We evaluate the algorithm based on real-world data and herein demonstrate the performance improvement compared with CPU-based computations.
Chapter PDF
Similar content being viewed by others
References
Aho, A.V., Ullman, J.D.: The theory of parsing, translation, and compiling (1972)
Bodenstab, N., Dunlop, A., Hall, K., Roark, B.: Beam-width prediction for efficient context-free parsing. In: Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics: Human Language Technologies, pp. 440ā449 (2011)
Bordim, J.L., Ito, Y., Nakano, K.: Accelerating the CKY parsing using fPGAs. In: Sahni, S.K., Prasanna, V.K., Shukla, U. (eds.) HiPC 2002. LNCS, vol.Ā 2552, pp. 41ā51. Springer, Heidelberg (2002)
Cai, L., Malmberg, R.L., Wu, Y.: Stochastic modeling of RNA pseudoknotted structures: a grammatical approach. Bioinformatics, 66ā73 (2003)
Chomsky, N.: On certain formal properties of grammars. Information and Control, 137ā167 (1959)
Cocke, J.: Programming languages and their compilers: Preliminary notes (1969)
DāAgostino, D., Clematis, A., Decherchi, S., Rocchia, W., Milanesi, L., Merelli, I.: Cuda accelerated molecular surface generation. Concurrency and Computation: Practice and ExperienceĀ 26(10), 1819ā1831 (2014)
Dunlop, A., Bodenstab, N., Roark, B.: Efficient matrix-encoded grammars and low latency parallelization strategies for CYK. In: Proceedings of the 12th International Conference on Parsing Technologies, pp. 163ā174 (2011)
Foster, J.: ācba to check the spellingā investigating parser performance on discussion forum posts. In: Human Language Technologies: The 2010 Annual Conference of the North American Chapter of the Association for Computational Linguistics, pp. 381ā384 (2010)
Hopcroft, J.E., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation (1979)
Johnson, M.: Parsing in parallel on multiple cores and GPUs. In: Proceedings of the Australasian Language Technology Association Workshop 2011, pp. 29ā37 (2011)
Kasami, T.: An efficient recognition and syntax analysis algorithm for context-free languages. Technical report, Air Force Cambridge Research Laboratory (1965)
Khronos OpenCL Working Group. The OpenCL Specification, version 1.0.29 (2008), http://khronos.org/registry/cl/specs/opencl-1.0.29.pdf
Marcus, M.P., Santorini, B., Marcinkiewicz, M.A.: Building a large annotated corpus of english: The Penn Treebank. Computational LinguisticsĀ 19(2), 313ā330 (1993)
Nvidia Corporation. NVIDIAās Next Generation CUDA Compute Architecture: Fermi. Technical report, Nvidia Corporation (2009)
Petrov, S., Barrett, L., Thibaux, R., Klein, D.: Learning accurate, compact, and interpretable tree annotation. In: Proceedings of the 21st International Conference on Computational Linguistics, pp. 433ā440 (2006)
Sakakibara, Y.: Learning context-free grammars using tabular representations. Pattern RecognitionĀ 38(9), 1372ā1383 (2005)
Sanders, J., Kandrot, E.: CUDA by Example: An Introduction to General-Purpose GPU Programming, 1st edn. Addison-Wesley Professional (2010)
Takashi, N., Kentaro, T., Taura, K., Tsujii, J.: A parallel CKY parsing algorithm on large-scale distributed-memory parallel machines. In: Proceedings of the 5th Pacific Association For Computational Lingustics, pp. 223ā231 (1997)
Weese, J., Ganitkevitch, J., Callison-Burch, C., Post, M., Lopez, A.: Joshua 3.0: syntax-based machine translation with the thrax grammar extractor. In: Proceedings of the 6th Workshop on Statistical Machine Translation, pp. 478ā484 (2011)
Yi, Y., Lai, C.-Y., Petrov, S.: Efficient parallel CKY parsing using GPUs. Journal of Logic and ComputationĀ 24(2), 375ā393 (2014)
Younger, D.H.: Recognition and parsing of context-free languages in time n 3. Information and ControlĀ 10, 189ā208 (1967)
Vu, V., Cats, G., Wolters, L.: Graphics processing unit optimizations for the dynamics of the HIRLAM weather forecast model. Concurrency and Computation: Practice and ExperienceĀ 25(10), 1376ā1393 (2013)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
Ā© 2014 IFIP International Federation for Information Processing
About this paper
Cite this paper
Kim, KH., Choi, SM., Lee, H., Man, K.L., Han, YS. (2014). Parallel CYK Membership Test on GPUs. In: Hsu, CH., Shi, X., Salapura, V. (eds) Network and Parallel Computing. NPC 2014. Lecture Notes in Computer Science, vol 8707. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-44917-2_14
Download citation
DOI: https://doi.org/10.1007/978-3-662-44917-2_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-44916-5
Online ISBN: 978-3-662-44917-2
eBook Packages: Computer ScienceComputer Science (R0)