11 research outputs found

    Enseñanza sobre arquitecturas avanzadas. Una experiencia: arquitectura e ingeniería de computadores

    Get PDF
    La asignatura Arquitectura y Tecnología de Computadores es la más representativa del área de AIC en el segundo ciclo de Ingeniería Informática en la Universidad Jaume I. La estructura del plan de estudios, la poca experiencia previa y la novedad y complejidad de sus contenidos le confieren una problemática especial que se analiza en el presente documento

    Perfil profesional y académico de la informática en España

    Get PDF
    La situación actual del mercado laboral para los titulados informáticos es halagüeña, como consecuencia del contexto socio–económico. Hay una gran demanda laboral en todo el mundo en el sector de las Tecnologías de la Información, TI, también conocido en España como “nuevas tecnologías”. Esta gran demanda puede llegar a afectar a la definición del perfil académico. En este punto, históricamente, la visión académica siempre difiere de la empresarial, y viceversa. En esta discusión debería incorporarse, de forma positiva, otro factor: tanto en EEUU como en Europa, se está promoviendo un amplio debate sobre cuáles son los perfiles y habilidades necesarias para cada uno de los profesionales de las TI. En esta definición de los perfiles profesionales, la universidad no debería permanecer al margen. Además de servir como un acercamiento a la visión empresarial, puede ser un motivo de reflexión sobre nuestra troncalidad intelectual, sobre la idoneidad de las titulaciones actuales y nuestro propio perfil científico, actualmente vertebrado en tres áreas de conocimiento

    Una e-revista donde publiquen los estudiantes de Informática

    Get PDF
    La actividad académica de los estudiantes suele centrarse en los conocimientos y técnicas impartidas en las asignaturas del curso en que están matriculados, dejando de lado, en muchos casos, actividades y destrezas que serán muy necesarias en el desarrollo de su posterior actividad profesional como: la redacción de informes, la presentación de trabajos, las búsquedas bibliográficas, etc., y cuando éstas intentan inculcarse en los proyectos fin de carrera o en las estancias en prácticas, en los últimos cursos, ya es demasiado tarde. Los estudiantes también poseen, en general, una falta de perspectiva respecto de los campos de estudio que les esperan en cursos posteriores, lo que dificulta elegir las asignaturas adecuadas para completar su formación. Al mismo tiempo, carecen de una referencia real respecto de la calidad esperada en los trabajos a desarrollar en las asignaturas en las que se van a matricular, o ya se han matriculado. La propuesta de una e-revista donde los estudiantes publiquen los trabajos de calidad, realizados en asignaturas de las titulaciones de informática pretende convertirse en una herramienta que palie, en parte, algunas de estas deficiencias. En este trabajo se presentan los aspectos más destacados de la puesta en marcha de una e-revista donde publiquen los estudiantes de las titulaciones de informática de la Universidad Jaume I (UJI)

    ¿Puedo programar mi móvil? Pero si acabo de llegar

    Get PDF
    Por sorprendente que parezca, cada vez que preguntamos a nuestros estudiantes recién matriculados en el Grado en Ingeniería Informática si han programado alguna vez, la respuesta mayoritaria es que no. Los pocos que han estudiado formación profesional en informática suelen tener alguna noción, pero la mayor parte de los que han estudiado bachillerato, ninguna. Esta falta de competencias básicas de programación supone una desventaja en aquellas asignaturas relacionadas con esta materia. En nuestro grado, esta desventaja es especialmente evidente en la asignatura Estructura de computadores, de primer curso y primer semestre que, sin ser una asignatura de programación al uso, tiene por objeto que el estudiante adquiera competencias relacionadas con la arquitectura de un computador y, por tanto, con la programación en lenguaje ensamblador. Para suplir esta falta de base, se ha impartido un taller de programación para móviles con MIT App Inventor. Este taller ha tenido una gran aceptación, ha sido muy bien valorado por los estudiantes y consideramos que ha contribuido a mejorar los resultados de Estructura de computadores.Surprisingly, every time we ask the newly enrolled students in the Degree in Computer Engineering whether they have ever programmed, the majority answer is no. The few that have done a computer science vocational training module usually have some notion, but most of those who have done high school, none. This lack of basic programming skills is a disadvantage in those courses related to this matter. In our degree, this disadvantage is especially evident in the Computers Structure course, taught on the first year at the first semester. Although it is not a usual programming course, it requires the student to acquire skills related to computer architecture, and, therefore, to programming in assembly language. To address this lack of previous knowledge, a workshop on mobile programming has been taught using MIT App Inventor. This workshop has had a great acceptance, has been very well evaluated by the students, and we believe that has contributed to improve their results on the Computers Structure course

    Optimising Convolutions for Deep Learning Inference on ARM Cortex-M Processors

    Get PDF
    We perform a series of optimisations on the convo lution operator within the ARM CMSIS-NN library to improve the performance of deep learning tasks on Arduino development boards equipped with ARM Cortex-M4 and M7 microcontrollers. To this end, we develop custom microkernels that efficiently handle the internal computations required by the convolution operator via the lowering approach and the direct method, and we design two techniques to avoid register spilling. We also take advantage of all the RAM on the Arduino boards by reusing it as a scratchpad for the convolution filters. The integration of these techniques into CMSIS-NN, when invoked by TensorFlow Lite for microcontrollers for quantised versions of VGG, SqueezeNet, ResNet, and MobileNet-like convolutional neural networks enhances the overall inference speed by a factor ranging from 1.13× to 1.50×.This research was funded by project TED2021-129334B-I00 supported by MCIN/AEI/10.13039/501100011033 and by the “European Union NextGenerationEU/PRTR”. Manuel F. Dolz was also supported by the Plan Gen–T grant CIDEXG/2022/13 of the Generalitat Valenciana. Antonio Macia-Lillo is a PRE2021-099284 fellow supported by MCIN/AEI/10.13039/501100011033

    Utilizando ARMSim y QtARMSim para la docencia de Arquitectura de Computadores

    Get PDF
    Muchos de los objetivos formativos de las asignaturas de introducción a la Arquitectura de Computadores se centran en aquellos aspectos que conforman la visión que un programador en lenguaje ensamblador tiene de un computador. Por regla general, para definir dichos objetivos se suele utilizar una arquitectura de computador concreta, que normalmente se selecciona con el doble criterio de que sea lo más sencilla posible y, a la vez, motive al estudiantado. La arquitectura ARM es una candidata idónea como vehículo conductor en la docencia de Arquitectura de Computadores. Por un lado, al estar basada en la arquitectura RISC (Reduced Instruction Set Computer), es relativamente sencilla. Por otro, se trata de una arquitectura actual y ampliamente difundida (especialmente en dispositivos móviles, smartphones y tabletas), lo que motiva al estudiantado. Para poder realizar prácticas sobre ARM es conveniente disponer de un simulador o de una herramienta de desarrollo sobre una máquina ARM. Puesto que dicha materia se explica en los primeros cursos, conviene que la aplicación seleccionada sea sencilla de utilizar y lo suficientemente flexible. Por otro lado, conviene que sea software libre, para poder adaptarla en caso necesario, y también multiplataforma y gratuita, para facilitar que el estudiante que lo desee pueda instalarla en su propio equipo. Tras evaluar distintas opciones, finalmente se optó por desarrollar y liberar un simulador propio de ARM, ARMSim, y una interfaz gráfica para dicho simulador, QtARMSim. El motor de simulación, ARMSim, y su interfaz, QtARMSim, han sido utilizados durante el curso 2014–15. Las críticas recibidas, tanto por los estudiantes como por los profesores de laboratorio, han sido muy positivas.Many of the training objectives of the Introduction to Computer Architecture modules focus on those aspects that conform the vision that an assembly language programmer has about a computer. As a rule, in order to define those objectives a concrete computer architecture is used following the following criteria: simplicity and ability to motivate students. ARM architecture is an ideal candidate for the didactics of Computer Architecture. On the one hand, being based on RISC architecture (Reduced Instruction Set Computer) it is rather simple. On the other, it is widely spread contemporary architecture (especially in mobile phones, smartphones and tablets), something that motivates students. In order to carry out ARM practice it would be convenient to have a simulator or a development tool on an ARM machine. Given the fact that this module is taught during the first academic years, it would also be convenient that the application selected was easy to use and flexible enough. Besides, it would be a good idea that it used freeware in order to be adapted if necessary, besides being free of charge and cross-platform-based so the students may install it in their own computers. After assessing several options, an ARM simulator (ARMSim) as well as a graphic interface for the latter (QtARMSim) were finally developed. The simulation engine, ARMSim, as well as its interface, QtARMSim, were used during the 2014/2015 academic year. The feedback received from both the students and lab lecturers have been remarkably positive

    Utilizando Arduino Due en la docencia de la entrada/salida

    Get PDF
    Resumen: La problemática de la entrada/salida y su gestión suele formar parte de las asignaturas de introducción a la arquitectura de computadores. La propia naturaleza del tema y su diversidad hace que las sesiones prácticas se lleven a cabo habitualmente, bien sobre dispositivos específicos sencillos, bien sobre simuladores, lo que las aleja de los dispositivos reales y les resta vistosidad. Sin embargo, es posible utilizar dispositivos actuales y sencillos, como las tarjetas Arduino, para presentar a los estudiantes una visión más real y atractiva de la entrada/ salida, manteniendo a su vez la sencillez de uso de los entornos y sistemas empleados, lo que consideramos prioritario en los primeros cursos de grado. En nuestro caso, puesto que actualmente fundamentamos nuestra docencia en arquitectura de computadores sobre la arquitectura ARM, hemos optado por el modelo Arduino Due, que dispone de un microcontrolador, el ATSAM3X8E, que implementa la versión Cortex- M3 de la arquitectura ARM. Para poder realizar las prácticas de entrada/salida hemos modificado ligeramente el entorno Arduino para poder incluir programas en ensamblador, y hemos diseñado una pequeña tarjeta con un led RGB y un pulsador, lo que ha permitido proponer ejercicios sencillos pero vistosos. Los propios dispositivos del microcontrolador de la Arduino DUE han bastado para abarcar otros aspectos de la entrada/salida y presentar ejemplos de mayor complejidad para incentivar a los estudiantes. La primera experiencia con este entorno ha sido satisfactoria tanto para el profesorado de las asignaturas en las que se ha utilizado como para los estudiantes, en quienes además se ha fomentado el interés en continuar trabajando con las tarjetas Arduino en sus propios proyectos.Abstract: The input/output (I/O) and its management is often part of the introductory courses to computer architecture. The very nature of this topic and its diversity makes that the practice sessions often take place either on simple specific devices, or on simulators, which hide the complexity of actual I/O devices and subtracts their appealing. However, it is possible to use today existing and simple devices such as Arduino boards to introduce students to a more realistic and attractive vision of the I/O, while maintaining the ease of use of the required environments and systems, which we consider a priority on first degree courses. In our case, since currently we base our teaching on computer architecture on the ARM architecture, we have opted for the Arduino Due model, which has a microcontroller, ATSAM3X8E, which implements the Cortex-M3 version of the ARM Architecture. To carry out the laboratory sessions on I/O we have slightly modified the Arduino IDE in order to accept assembly source code. In addition, we have designed and built a small board with an RGB led and a switch, which allowed us to propose simple but colourful exercises. The built-in I/O included in the ARM controller of the Arduino DUE board have proved enough to explore other important aspects of I/O as well as to offer more complex examples to incentivate the students on the subject. The first experience with this environment has been satisfactory for both teachers and students, who also have fostered interest in continuing to work with Arduino cards in their own projects

    ARMSim y QtARMSim: simulador de ARM para docencia

    Get PDF
    Muchos de los objetivos formativos de las asignaturas de introducción a la Arquitectura de Computadores se centran en aquellos aspectos que conforman la visión que un programador en lenguaje ensamblador tiene de un computador. Por regla general, para definir dichos objetivos se suele utilizar una arquitectura de computadores concreta, que normalmente se selecciona con el doble criterio de que sea lo más sencilla posible y, a la vez, motive al estudiantado. La arquitectura ARM es una candidata idónea como vehículo conductor en la docencia de arquitectura de computadores. Por un lado, al estar basada en la arquitectura RISC (Reduced Instruction Set Computer), es relativamente sencilla. Por otro, se trata de una arquitectura actual y ampliamente difundida (especialmente en dispositivos móviles, smartphones y tablets), lo que motiva al estudiantado. Para poder realizar prácticas sobre ARM es conveniente disponer de un simulador o de una herramienta de desarrollo sobre una máquina ARM. Puesto que dicha materia se explica en los primeros cursos, conviene que la aplicación seleccionada sea sencilla de utilizar y lo suficientemente flexible. Por otro lado, conviene que sea libre, para poder adaptarla en caso necesario, y también multiplataforma y gratuita, para facilitar que el estudiante que lo desee pueda instalarla en su propio equipo. Tras evaluar distintas opciones, finalmente optamos por desarrollar y liberar nuestro propio simulador de ARM, ARMSim, y una interfaz gráfica para dicho simulador, QtARMSim. El simulador ARMSim y su interfaz, QtARMSim, han sido utilizados durante el primer semestre del curso 2014/15. Las críticas recibidas, tanto por los estudiantes como por los profesores de laboratorio, han sido muy positivas.Most of the learning objectives of introductory courses to Computer Architecture focus on those aspects that are related to the vision an assembly language programmer has of a computer. Generally, a particular computer architecture is used to define these objec- tives, which is usually selected with the double objective of being as simple as possible and to motivate the students. The ARM architecture is an ideal candidate as a vehicle architecture in teaching computer architecture. On the one hand, as it is based on RISC, it is relatively simple architecture. On the other, it is a widespread and current architecture (especially on mobile devices, smartphones and tablets), which motivates the students. To perform practices on ARM, it is convenient to have access either to a simulator or a development tool on an ARM machine. Since this matter is taught on the first years, the selected application should be simple to use and flexible enough. On the other hand, it ought to be free, as in freedom, to be able to adapt it if necessary, multiplatform and free, as in free beer, to facilitate that any student could install it on his own computer. After evaluating different alternatives, we finally opted for developing and releasing our own ARM simulator, ARMSim, and a GUI for this simulator, QtARMSim. The ARMSim simulator and its interface, QtARMSim, have been used during the first semester of 2014/15. The feedback received by students and laboratory teachers has been very positive

    Performance–energy trade-offs of deep learning convolution algorithms on ARM processors

    Get PDF
    In this work, we assess the performance and energy efficiency of high-performance codes for the convolution operator, based on the direct, explicit/implicit lowering and Winograd algorithms used for deep learning (DL) inference on a series of ARM-based processor architectures. Specifically, we evaluate the NVIDIA Denver2 and Carmel processors, as well as the ARM Cortex-A57 and Cortex-A78AE CPUs as part of a recent set of NVIDIA Jetson platforms. The performance–energy evaluation is carried out using the ResNet-50 v1.5 convolutional neural network (CNN) on varying configurations of convolution algorithms, number of threads/cores, and operating frequencies on the tested processor cores. The results demonstrate that the best throughput is obtained on all platforms with the Winograd convolution operator running on all the cores at their highest frequency. However, if the goal is to reduce the energy footprint, there is no rule of thumb for the optimal configuration.Open Access funding provided thanks to the CRUE-CSIC agreement with Springer Nature. This research was funded by Project PID2020-113656RB-C21/C22 supported by MCIN/AEI/10.13039/501100011033. Manuel F. Dolz was also supported by the Plan Gen–T grant CDEIGENT/2018/014 of the Generalitat Valenciana. Héctor Martínez is a POSTDOC_21_00025 fellow supported by Junta de Andalucía. Adrián Castelló is a FJC2019-039222-I fellow supported by MCIN/AEI/10.13039/501100011033. Antonio Maciá is a PRE2021-099284 fellow supported by MCIN/AEI/10.13039/501100011033
    corecore